Ich schreibe einen kleinen Befehl, der nslookup verwendet, um nur die IP-Adresse eines Domänennamens abzurufen.
Folgendes habe ich getan:
nslookup scanme.nmap.org | grep -i "Address" | awk '{print $2}'
Ausgabe:
127.0.0.53#53
45.33.32.156
2600:3c01::f03c:91ff:fe18:bb2f
Jetzt möchte ich aus dem obigen nur noch die zweite Zeile erhalten, d.h.45.33.32.156. Ich bin relativ neu bei Ubuntu und Linux im Allgemeinen, also helfen Sie mir bitte, auch wenn es vielleicht ganz einfach ist (ich habe wirklich Mühe!!). Vielen Dank im Voraus. ;-)
Antwort1
Um die zweite Zeile zu erhalten, verwenden Sie 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
Antwort2
Da Sie awk bereits zum Abrufen der zweiten Spalte verwenden, können Sie es auch anweisen, nur den zweiten Datensatz zu verarbeiten:
$ nslookup scanme.nmap.org | grep -i "Address" | awk 'NR==2 {print $2}'
45.33.32.156