awkを使用したdfコマンド出力の解析

awkを使用したdfコマンド出力の解析

で始まるすべての行を一致させた後、ヘッダーとして印刷する出力の最初の行をどのように保存できますか/dev/nvme

今度は2回呼び出す必要がありますが、dfawkを使用して一度に呼び出したいと思います。

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

必要な結果は次のとおりです。

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

答え1

他の人が指摘したように:

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

あるいは、Linuxでは、dfコマンドラインからデバイスファイルを指定できます。

df -x devtmpfs -Ph /dev/nvme*

これは、一致するデバイスがマウントされていない場合にファイルシステムが表示されるのを-x devtmpfs防ぐためです。/dev

この-Pオプションは、df列の1つが非常に広い場合でも改行が発生しないようにします。

第2のアプローチの利点は、df出力に応じて列の間隔を適切に指定できることである。

関連情報