Equivalente ao terminal do Mac OS X para informações sobre o nome do host

3

No Linux, usando um Bash Terminal, eu posso fazer:

  • hostname -d para exibir o nome do domínio DNS e
  • hostname -i para exibir o (s) endereço (s) de rede do nome do host.

Como posso recuperar as mesmas informações - de preferência usando um único comando (com opção, se necessário) e sem ter que elevar privilégios - de um terminal Bash no Mac OS X?

Para referência, aqui está a versão do Bash que estou usando no Mac OS X:

  • GNU bash, versão 3.2.57 (1) -release (x86_64-apple-darwin15).
por marshki 23.10.2016 / 17:30

2 respostas

3

Para o hostname -d , use hostname -f :

hostname -f | sed -e 's/^[^.]*\.//'

Para endereços IP, use ifconfig -a (procure os inet data). Sua máquina pode ter apenas um dispositivo de rede, en0 , então você poderia fazer apenas

ifconfig en0 |awk '/inet / {print $2; }'

Se você estiver interessado em todos os dispositivos de rede, lembre-se de que ifconfig -l lista os dispositivos. Isso lista os dispositivos e seus endereços correspondentes:

#!/bin/sh
for name in $(ifconfig -l)
do
    ifconfig $name |awk -v name=$name '/inet / {printf "%s: %s\n", name, $2; }'
done

Leitura adicional:

por 23.10.2016 / 17:35
-1

Use 'dig'. Procure por comandos semelhantes ao whois

dig hostname = > ambos hostname + ipaddy

digita ip.address = > não tão completo

    
por 23.05.2018 / 22:06