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