myip - Comando que retorna somente o IP
Dica publicada em Shell Script / Miscelânea
myip - Comando que retorna somente o IP
Sabemos que não tem um comando específico pra trazer apenas o IP da máquina, e que ifconfig resolve, mas, fazer um comando que
retorna algo específico, é muito legal.
Baseado no ifconfig, fiz um comando simples, muito besta (hehehe).
Abra um terminal, como root, e crie um arquivo:
# > arquivo
Abra o arquivo. Com o nano ou com o editor que você preferir:
# nano arquivo
Copie e cole o texto abaixo no "arquivo" criado:
Salve o arquivo.
Sem sair do diretório, copie e cole no terminal o seguinte comando:
# cat arquivo > /bin/myip ; chmod 7777 /bin/myip
Ou:
# cp arquivo /bin/myip ; chmod 7777 /bin/myip
Dê a permissão que quiserem, em vez do 7777. Porém, sabemos que o ifconfig retorna valor como root no Debian, então, o comando myip não funcionará como usuário normal.
Modo de usar: no terminal, como root, digite myip e aperte o Enter, na linha seguinte aparece o IP, como abaixo... semelhante ao comando hostname:
# myip
Baseado no ifconfig, fiz um comando simples, muito besta (hehehe).
Abra um terminal, como root, e crie um arquivo:
# > arquivo
Abra o arquivo. Com o nano ou com o editor que você preferir:
# nano arquivo
Copie e cole o texto abaixo no "arquivo" criado:
#!/bin/bash
sip="/tmp/sip"
aux="/tmp/aux"
ifconfig > $sip
cat $sip | awk 'NR>=2 && NR<=2' > $aux
exibir="`cat $aux | awk '{print $3}'`"
rm $aux |rm $sip
echo "$exibir"
sip="/tmp/sip"
aux="/tmp/aux"
ifconfig > $sip
cat $sip | awk 'NR>=2 && NR<=2' > $aux
exibir="`cat $aux | awk '{print $3}'`"
rm $aux |rm $sip
echo "$exibir"
Salve o arquivo.
Sem sair do diretório, copie e cole no terminal o seguinte comando:
# cat arquivo > /bin/myip ; chmod 7777 /bin/myip
Ou:
# cp arquivo /bin/myip ; chmod 7777 /bin/myip
Dê a permissão que quiserem, em vez do 7777. Porém, sabemos que o ifconfig retorna valor como root no Debian, então, o comando myip não funcionará como usuário normal.
Modo de usar: no terminal, como root, digite myip e aperte o Enter, na linha seguinte aparece o IP, como abaixo... semelhante ao comando hostname:
# myip
192.168.1.48Simples...
#!/bin/bash
ifconfig | awk 'NR>=2 && NR<=2' | awk '{print $3}'