将 df -h /dev/xvda1 的输出合并到一行中

将 df -h /dev/xvda1 的输出合并到一行中

我想将 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

相关内容