Achar ip válido e jogar para uma variável
Dica publicada em Shell Script / Variáveis
Achar ip válido e jogar para uma variável
Estava atrás de um script para descobrir o ip válido de minha placa eth0 e os que achei retornaram um erro, então desenvolvi este pequeno script que pode ser executado como 1 linha de comando também:
- Guardando IP num arquivo /tmp/ipvalido
- Guardando IP num arquivo /tmp/ipvalido
ifconfig > /tmp/ifconfig.tmp; TEMP=`cat /tmp/ifconfig.tmp | grep inet | awk '{print $3}'`; IPVALIDO=`echo $TEMP | awk '{print $1}'`; echo $IPVALIDO | tee /tmp/ifconfig.tmp; mv /tmp/ifconfig.tmp /tmp/ipvalido
- Apenas pegando o IP
ifconfig > /tmp/ifconfig.tmp; temp=`cat /tmp/ifconfig.tmp | grep inet | awk '{print $3}'`; ipvalido=`echo $temp | awk '{print $1}'`; echo $ipvalido; rm -rf /tmp/ifconfig.tmp
Nota: os 2 scripts devem ser executados em uma única linha de comando, mas pode-se desmembrar facilmente e transformar num script substituindo-se os ";" por uma quebra de linha e jogar num arquivo de texto, como no exemplo abaixo:
- Guardando IP num arquivo /tmp/ipvalido (Script)
#!/bin/bash
ifconfig > /tmp/ifconfig.tmp
TEMP=`cat /tmp/ifconfig.tmp | grep inet | awk '{print $3}'`
IPVALIDO=`echo $TEMP | awk '{print $1}'`
echo $IPVALIDO | tee /tmp/ifconfig.tmp
mv /tmp/ifconfig.tmp /tmp/ipvalido
ifconfig > /tmp/ifconfig.tmp
TEMP=`cat /tmp/ifconfig.tmp | grep inet | awk '{print $3}'`
IPVALIDO=`echo $TEMP | awk '{print $1}'`
echo $IPVALIDO | tee /tmp/ifconfig.tmp
mv /tmp/ifconfig.tmp /tmp/ipvalido
- Apenas pegando o IP
ifconfig > /tmp/ifconfig.tmp
temp=`cat /tmp/ifconfig.tmp | grep inet | awk '{print $3}'`
ipvalido=`echo $temp | awk '{print $1}'`
echo $ipvalido
rm -rf /tmp/ifconfig.tmp
temp=`cat /tmp/ifconfig.tmp | grep inet | awk '{print $3}'`
ipvalido=`echo $temp | awk '{print $1}'`
echo $ipvalido
rm -rf /tmp/ifconfig.tmp