Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 使用awk显示磁盘使用率超过10%的设备,并打印列标题_Linux_Awk_Disk Access - Fatal编程技术网

Linux 使用awk显示磁盘使用率超过10%的设备,并打印列标题

Linux 使用awk显示磁盘使用率超过10%的设备,并打印列标题,linux,awk,disk-access,Linux,Awk,Disk Access,下面的命令显示文件系统使用率高于10%的设备。但是,它不显示列标题。这是我使用的命令: df -Ph | awk '+$5 >= 10 {print}' 我想要这样的输出 Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-LogVol00 9.7G 1.9G 7.4G 21% / /dev/mapper/VolGroup00-LogVol 5

下面的命令显示文件系统使用率高于10%的设备。但是,它不显示列标题。这是我使用的命令:

df -Ph | awk '+$5 >= 10 {print}'

我想要这样的输出

Filesystem                      Size  Used Avail Use% Mounted on 
/dev/mapper/VolGroup00-LogVol00   9.7G  1.9G  7.4G  21% /
/dev/mapper/VolGroup00-LogVol     5.0G  665M  4.1G  14% /app 
server:/data                      5.0G  546M  4.3G  12% /data

您可以使用awk打印行的两个条件执行此操作:磁盘使用率高于10%,第一个参数为“Filesystem”:

编辑根据Jotne的建议,您可以这样写这篇短文(打印是默认操作):


如果第一行或第五个字段大于或等于10,则打印

df -Ph | awk 'NR==1 || +$5 >= 10'

Awk的默认操作是打印行,这样就可以省略块

您不需要括号,也不需要
打印
,因此可以这样做:
df-Ph | awk'+$5>=10 | | 1==“Filesystem”
+1这是在awk中执行此操作的方法。我从未见过只使用
+$5
来强制进行数字比较,我总是使用
($5+0)
。你知道这是否能保证有效且便于携带吗?
df -Ph | awk '+$5>=10 || $1=="Filesystem"'
df -Ph | awk 'NR==1 || +$5 >= 10'