GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Listen Sie nur die Gerätenamen aller verfügbaren Netzwerkschnittstellen auf

Eine andere Alternative wäre:

ip -o link show | awk -F': ' '{print $2}'

Oder vielleicht:

ls /sys/class/net

Verwenden Sie einfach /sys/class/net und entfernen Sie den Pfad:

$ basename -a /sys/class/net/*
eth0
eth1
lo
ppp0
tun0

Ein modernerer Weg wäre die Verwendung der iproute-json-Ausgabe und eines Parsers wie:

$ ip -j link |jq -r '.[].ifname'
lo
wlp0s20f3
enp0s31f6
virbr0
virbr0-nic

Damit können Sie die Loopback-Schnittstelle herausfiltern:

$ ip -j link |jq -r '.[].ifname | select(. != "lo")'
wlp0s20f3
enp0s31f6
virbr0
virbr0-nic

Probieren Sie es aus:

ifconfig -a | sed 's/[ \t].*//;/^$/d'

Dadurch wird lo weggelassen :

ifconfig -a | sed 's/[ \t].*//;/^\(lo\|\)$/d'

Linux
  1. Das Namensspiel:Benennen von Netzwerkschnittstellen in Linux

  2. CentOS / RHEL 7:So aktivieren Sie die alten Netzwerkschnittstellennamen im ethX-Stil

  3. diff, um nur die Dateinamen auszugeben

  4. Verfügbare Netzwerkschnittstellen in C/C++ finden?

  5. Gibt es einen Befehl zum Auflisten aller Unix-Gruppennamen?

So finden Sie verfügbare Netzwerkschnittstellen unter Linux

Wie listet man die verfügbaren Farbnamen auf?

Liste aller verfügbaren Manpages

Wie kann ich alle IPs im verbundenen Netzwerk auflisten, vorzugsweise über Terminal?

Wie finde ich verfügbare Netzwerkschnittstellen?

Erstellen Sie ein Array mit allen Netzwerkschnittstellen in Bash