在匹配所有以 开头的行后,如何存储要打印的第一行输出作为标题/dev/nvme
?
现在我要调用df
两次,但我想用 awk 一次性完成。
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"'
或者,Linuxdf
允许您在命令行上指定设备文件:
df -x devtmpfs -Ph /dev/nvme*
这-x devtmpfs
是为了防止/dev
在未安装匹配设备时显示文件系统。
该-P
选项保证df
即使其中一列很宽也不会断行。
第二种方法的优点是df
可以根据输出适当地间隔列。