Linux:Pegando o endereço IP via shell
Pegando o ip de um interface via shell
Exemplo 1:
ifconfig eth1 | grep "inet addr" | awk -F: '{ print $2 }' | awk '{ print $1 }'
Exemplo 2:
ifconfig eth1 | awk -F: '/inet addr/{ print $2 }' | awk '{ print $1 }'
Exemplo de shell completo
Este verifica se o ip atual é o mesmo do ip corrente e executa a atualização de alguns serviços
#!/bin/bash
IP_ATUAL=`/sbin/ifconfig eth1 | grep "inet addr" | awk -F: '{ print $2 }' | awk '{ print $1 }'`
#IP_NOVO=`lynx -dump www.meuip.com.br | grep -v [a-zA-Z] | awk '{ printf $1 }'`
IP_NOVO=`lynx -dump -hiddenlinks=ignore -nolist http://checkip.dyndns.org:8245/ | awk '{ printf $4 }'`
if [ "$IP_ATUAL" != "$IP_NOVO" ]; then
echo "true"
/etc/init.d/network restart
/etc/init.d/noip restart
/etc/init.d/httpd restart
else
echo "false"
fi
Ver também
- Linux:Comando Find
- Linux:Comando Awk
- Linux:Comando Xargs
- Linux:Pegando o diretório onde o script está sendo executado via shell