Conseils pour mettre votre adresse IP dans une variable, comme dans un script shell Seul IPv4 est pris en charge.
$ cat /etc/os-release
NAME="Amazon Linux"
VERSION="2"
ID="amzn"
ID_LIKE="centos rhel fedora"
VERSION_ID="2"
PRETTY_NAME="Amazon Linux 2"
ANSI_COLOR="0;33"
CPE_NAME="cpe:2.3:o:amazon:amazon_linux:2"
HOME_URL="https://amazonlinux.com/"
$ ip a|grep -e inet |grep -v inet6
inet 127.0.0.1/8 scope host lo
inet 192.168.1.1/24 brd 192.168.1.255 scope global dynamic eth0
inet 192.168.2.1/24 brd 192.168.2.255 scope global dynamic eth1
$ hostname -i #Afficher uniquement eth0
192.168.1.1
$ hostname -I #Tout montrer sauf lo
192.168.1.1 192.168.2.1
#Le moyen le plus simple
$ MyIP=`hostname -i`
$ echo $MyIP
192.168.1.1
#Lorsqu'il y a plusieurs adresses IP
$ MyIPeth0=`hostname -I | cut -f1 -d' '`
$ echo $MyIPeth0
192.168.1.1
$ MyIPeth1=`hostname -I | cut -f2 -d' '`
$ echo $MyIPeth1
192.168.2.1
Cliquez ici si on vous dit d'utiliser la commande hostname car c'est dangereux
$ MyIPeth0=`ip -f inet -o addr show eth0|cut -d\ -f 7 | cut -d/ -f 1`
$ echo $MyIPeth0
192.168.1.1
$ MyIPeth1=`ip -f inet -o addr show eth1|cut -d\ -f 7 | cut -d/ -f 1`
$ echo $MyIPeth1
192.168.2.1
Lors de l'exécution de la commande hostname en tant que root, si 'hostname i' est utilisé à la place de'ostname -i ' Notez que le nom d'hôte sera i.
$ hostname
hogehoge
$ hostname i
hostname: you must be root to change the host name
$ sudo su -
#
# hostname i
# hostname
i
# MyIPeth0=`hostname I | cut -f1 -d' '`
# hostname
I
c'est tout
Recommended Posts