Analysieren der Ausgabe des df-Befehls mit awk

Analysieren der Ausgabe des df-Befehls mit awk

Wie kann ich die erste Ausgabezeile speichern, um sie als Kopfzeile zu drucken, nachdem alle Zeilen abgeglichen wurden, die mit beginnen /dev/nvme?

Im Moment rufe ich dfzweimal auf, aber ich möchte es in einem Durchgang mit awk tun.

df -h | grep '^Filesystem' && df -h | grep '^/dev/nvme'

Gewünschte Ergebnisse wären:

Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p2  ...
/dev/nvme0n1p1 ...

Antwort1

Wie von anderen angemerkt:

df -Ph | awk 'NR == 1 || $0 ~ "^/dev/nvme"'

Alternativ dfkönnen Sie unter Linux die Gerätedatei in der Befehlszeile angeben:

df -x devtmpfs -Ph /dev/nvme*

Dadurch -x devtmpfssoll verhindert werden, /devdass das Dateisystem angezeigt wird, wenn kein passendes Gerät gemountet ist.

Die -POption garantiert, dass dfkeine Zeilenumbrüche erfolgen, auch wenn eine der Spalten breit ist.

Der Vorteil der zweiten Methode besteht darin, dass dfdie Spalten für die Ausgabe entsprechend angeordnet werden.

verwandte Informationen