我想将 2 行输出转换为df -h
单个有意义的行,即
拿
[root@ip-10-42-1-246 tmp]# df -h /dev/xvda1
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 20G 1.2G 19G 6% /
[root@ip-10-42-1-246 tmp]#
并产生 1 行来读取
Filesystem: /dev/xvda1 Size: 20G Used: 1.2G Avail: 19G Use%: 6% Mounted on: /
做到这一点最有效的方法是什么?然后我可以将信号线喷射到系统日志中并用它做有趣的事情。
答案1
尝试这样做:
LANG=C df -h /dev/xvda1 |
awk 'NR>1{print "Filesystem: "$1 " Size: " $2 " Used: " $3 " Avail: " $4 " Use%:" $5 " Mounted on: " $6}'
答案2
你可能会做...
findmnt -DP /dev/xvda1
这非常接近你想要的。这是我/dev/sda1
得到的:
findmnt -DP /dev/sda1
SOURCE="/dev/sda1" FSTYPE="vfat" SIZE="3G" USED="306.5M" AVAIL="2.7G" USE%="10%" TARGET="/esp"
您可以选择使用开关进一步指定字段--output
。