Combina a saída de df -h / dev / xvda1 em uma única linha

3

Eu quero converter a saída de 2 linhas de df -h em uma única linha significativa, ou seja,

Tome

[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]#

E produza 1 linha para ler

Filesystem: /dev/xvda1 Size: 20G Used: 1.2G Avail: 19G Use%: 6% Mounted on: /

Qual é a maneira mais eficiente de fazer isso? Eu posso então esguichar a linha do signle no syslog e fazer coisas interessantes com ela.

    
por freecloud 03.12.2014 / 19:00

2 respostas

3

Tente fazer isso:

LANG=C df -h /dev/xvda1 |
awk 'NR>1{print "Filesystem: "$1 " Size: " $2 " Used: " $3 " Avail: " $4 " Use%:" $5 " Mounted on: " $6}'
    
por 03.12.2014 / 19:06
0

Você pode fazer ...

findmnt -DP /dev/xvda1

Qual é bem próximo do que você quer. Aqui está o que meu /dev/sda1 recebe:

findmnt -DP /dev/sda1

SOURCE="/dev/sda1" FSTYPE="vfat" SIZE="3G" USED="306.5M" AVAIL="2.7G" USE%="10%" TARGET="/esp"

Como opção, você pode especificar os campos com a opção --output .

    
por 04.12.2014 / 10:19