OBS! Detta är bara ett exempel. Jag är inte inloggad som root.root@127:~$
D.v.s. att den "skalar" av efter första punkten. Min fråga är om det går att skriva ut hela IP-adressen?
Tacksam för svar!
Med vänliga hälsningar
Linus Göransson

OBS! Detta är bara ett exempel. Jag är inte inloggad som root.root@127:~$
Att kunna se hela IP-adressen.andol skrev:/etc/hostname ska, likt namnet antyder, innehålla just ett värdnamn.
Låter som om du försöker lösa fel problem på fel sätt
Vilket resultat är det du är ute efter?
Ja.andol skrev:Jo, men var vill du att den ska visas? I terminalprompten enligt exemplet ovan?
Fast så enkelt är det nog inte... Om man inte kan använda sig av backticks i PS1 och greppa reda på IP från ifconfig eller dylikt då. Det vill säga, om man vill vara säker på att det faktiskt är ens IP och inte bara en nummerserie utan mening...andol skrev:Rätt lösning är i sådant fall att peta på filen ~/.bashrc och där redigera variabeln PS1, så att prompten visar user@ip-adress istället för user@hostname.
Kod: Markera allt
PS1="`whoami`@`ifconfig|head -2|tail -1|awk '{print $2}'|sed s/addr\://` > "
Kod: Markera allt
IPA=`ifconfig|head -2|tail -1|awk '{print $2}'|sed s/addr\://`
D.v.s. den skriver inte ut något alls.root@:~$
Posta din .bashrcLinus Göransson skrev:Jag gjorde precis som du skrev. Resultatet blev som följande:
D.v.s. den skriver inte ut något alls.root@:~$
dmz skrev:Posta din .bashrcLinus Göransson skrev:Jag gjorde precis som du skrev. Resultatet blev som följande:
D.v.s. den skriver inte ut något alls.root@:~$
Kod: Markera allt
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples
# If not running interactively, don't do anything
[ -z "$PS1" ] && return
# don't put duplicate lines in the history. See bash(1) for more options
export HISTCONTROL=ignoredups
# ... and ignore same sucessive entries.
export HISTCONTROL=ignoreboth
# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize
# make less more friendly for non-text input files, see lesspipe(1)
[ -x /usr/bin/lesspipe ] && eval "$(SHELL=/bin/sh lesspipe)"
# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then
debian_chroot=$(cat /etc/debian_chroot)
fi
# set a fancy prompt (non-color, unless we know we "want" color)
case "$TERM" in
xterm-color) color_prompt=yes;;
esac
# uncomment for a colored prompt, if the terminal has the capability; turned
# off by default to not distract the user: the focus in a terminal window
# should be on the output of commands, not on the prompt
#force_color_prompt=yes
if [ -n "$force_color_prompt" ]; then
if [ -x /usr/bin/tput ] && tput setaf 1 >&/dev/null; then
# We have color support; assume it's compliant with Ecma-48
# (ISO/IEC-6429). (Lack of such support is extremely rare, and such
# a case would tend to support setf rather than setaf.)
color_prompt=yes
else
color_prompt=
fi
fi
IPA=`ifconfig|head -2|tail -1|awk '{print $2}'|sed s/addr\:`
if [ "$color_prompt" = yes ]; then
PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@${IPA}\[\033[00m\]$
else
PS1='${debian_chroot:+($debian_chroot)}\u@${IPA}:\w\$ '
fi
unset color_prompt force_color_prompt
# If this is an xterm set the title to user@host:dir
case "$TERM" in
xterm*|rxvt*)
PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"'
;;
*)
;;
esac
# Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
#if [ -f ~/.bash_aliases ]; then
# . ~/.bash_aliases
#fi
# enable color support of ls and also add handy aliases
if [ "$TERM" != "dumb" ] && [ -x /usr/bin/dircolors ]; then
eval "`dircolors -b`"
alias ls='ls --color=auto'
#alias dir='ls --color=auto --format=vertical'
#alias vdir='ls --color=auto --format=long'
#alias grep='grep --color=auto'
#alias fgrep='fgrep --color=auto'
#alias egrep='egrep --color=auto'
fi
# some more ls aliases
#alias ll='ls -l'
#alias la='ls -A'
#alias l='ls -CF'
# enable programmable completion features (you don't need to enable
# this, if it's already enabled in /etc/bash.bashrc and /etc/profile
# sources /etc/bash.bashrc).
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
Du är mer petig med matchningen än dmz. Han plockar alltid ut andra ordet på andra raden, vilket inte nödvändigtvis behöver vara ip-adressen. Du antar å andra sidan att det alltid är eth0 som gäller, vilket kanske inte heller stämmer alla gånger.andol skrev:Utanför ämnet: För egen del hade jag gjort en`ifconfig eth0 | egrep "^\s*inet addr:" | sed -r "s/\s+inet addr:(([0-9]{1,3}\.){3}[0-9]{1,3})\s+.*/\1/"` där DMZ kör med `ifconfig|head -2|tail -1|awk '{print $2}'|sed s/addr\://`. Ingen aning om vilken utav dessa metoder som egentligen är bäst, men jag är rätt säker på att de säger något om skillnaden mellan mig och DMZ. Vad denna skillnad skulle vara är jag dok mindre säker på
Kod: Markera allt
ifconfig | sed '2!d;s/.*addr://;s/\s.*//'
ifconfig | awk -F'[ :]+' 'NR==2{print$4}'
Kod: Markera allt
ifconfig eth0 | sed -nr "s/\s+inet addr:(([0-9]{1,3}\.){3}[0-9]{1,3})\s+.*/\1/p"
Kod: Markera allt
ifconfig eth | sed -n "/.*addr:/{s///;s/\\s.*//p;q}"
Kod: Markera allt
IPA=`ifconfig eth | sed -n "/.*addr:/{s///;s/\\s.*//p;q}"`
PS1='${debian_chroot:+($debian_chroot)}\u@$IPA:\w\$ '
Kod: Markera allt
IPA='`ifconfig eth | sed -n "/.*addr:/{s///;s/\\s.*//p;q}"`'
PS1='${debian_chroot:+($debian_chroot)}\u@'$IPA':\w\$ '