Estoy escribiendo un pequeño comando que usa nslookup para obtener la dirección IP de un nombre de dominio.
Esto es lo que he hecho:
nslookup scanme.nmap.org | grep -i "Address" | awk '{print $2}'
Producción:
127.0.0.53#53
45.33.32.156
2600:3c01::f03c:91ff:fe18:bb2f
Ahora de lo anterior solo quiero obtener la segunda línea, es decir45.33.32.156. Soy relativamente nuevo en Ubuntu y Linux en general, así que ayúdenme aunque sea muy simple (¡¡realmente estoy luchando!!). Gracias de antemano. ;-)
Respuesta1
Para obtener la segunda línea, use sed -n '2 p'
:
$ printf "127.0.0.53#53\n45.33.32.156\n2600:3c01::f03c:91ff:fe18:bb2f" | sed -n '2 p'
45.33.32.156
Respuesta2
Como ya usas awk para obtener la segunda columna, también puedes indicarle que solo procese el segundo registro:
$ nslookup scanme.nmap.org | grep -i "Address" | awk 'NR==2 {print $2}'
45.33.32.156