La commande "df -h" met des sauts de ligne en sortie. Comment puis-je réparer?


14

Ma commande "df -h" sur ma boîte Linux a des périphériques avec des noms plus longs et donc la sortie "df -h" contient des sauts de ligne (ou tabulations ??), ce qui rend difficile l'analyse de la sortie dans un script.

Est-ce que quelqu'un sait comment je peux supprimer les sauts de ligne pour que ce soit le dernier des résultats suivants:

[root@me ~]# df -kh
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                      3.9G  404M  3.3G  11% /
/dev/mapper/VolGroup00-LogVol05
                      3.9G  442M  3.3G  12% /home
/dev/mapper/VolGroup00-LogVol04
                      3.9G  261M  3.5G   7% /var
/dev/mapper/VolGroup00-LogVol03
                      3.9G  137M  3.6G   4% /tmp
/dev/mapper/VolGroup00-LogVol02
                      7.8G  3.6G  3.8G  49% /usr

Et le format souhaité est:

[root@me ~]# df -kh
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00   3.9G  404M  3.3G  11% /
/dev/mapper/VolGroup00-LogVol05   3.9G  442M  3.3G  12% /home
/dev/mapper/VolGroup00-LogVol04   3.9G  261M  3.5G   7% /var
/dev/mapper/VolGroup00-LogVol03   3.9G  137M  3.6G   4% /tmp
/dev/mapper/VolGroup00-LogVol02   7.8G  3.6G  3.8G  49% /usr

1
Je ne peux pas tester cela car mes chemins d'accès ne sont pas énormes comme les vôtres. Essayezdf -Pkh
— user606723

1
@ user606723: pourquoi ne pas le mettre dans une réponse?
— enzotib

Je viens de le faire. = p. Je ne l'ai pas mis dans une réponse au début parce que c'était une supposition flagrante de regarder le fichier man pendant deux secondes.
— user606723

1
L'utilisation de -het -kensemble est inutile car ils se contredisent et le dernier donné "gagne" (c'est-à-dire df -hkdonne 1024 blocs de sortie tout en df -khdonnant une sortie lisible par l'homme ).
— PerlDuck

Réponses:


18

Essayer: df -Pkh

Le P signifie "portable" et le forcera à suivre la sortie standard POSIX.
J'ai une intuition qui corrigera tout formatage intelligent que df essaie de faire.

À l'avenir, lorsque vous essayez de résoudre des problèmes comme ceux-ci, essayez de man dfvoir si vous pouvez trouver quelque chose qui pourrait fonctionner ... car c'est ce que j'ai fait =)


Ack. J'utilisais "df --help" plutôt que "man df". Merci pour le rappel.
— djangofan

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.