Linux:Pegando o endereço IP via shell: Difference between revisions
(New page: == 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 ...) |
No edit summary |
||
Line 8: | Line 8: | ||
ifconfig eth1 | awk -F: '/inet addr/{ print $2 }' | awk '{ print $1 }' | 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 |
Revision as of 13:08, 5 February 2009
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