web-dev-qa-db-fra.com

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

Ma commande "df -h" sur ma machine Linux a des périphériques avec des noms plus longs et donc la sortie "df -h" contient des sauts de ligne (ou des onglets ??), 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 afin que ce soit ce que je reçois:

[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
14
djangofan

Essayez: df -Pkh

Le P signifie "portable" et le forcera à suivre la sortie standard POSIX.
Je pense que tout ira bien pour le formatage astucieux que df essaie de faire.

Dans le futur, lorsque vous essayez de résoudre des problèmes comme ceux-ci, essayez man df et voyez si vous pouvez trouver quelque chose qui ressemble à cela pourrait fonctionner ... car c'est ce que j'ai fait =)

18
user606723
 df -Ph | awk '{printf "%-35s%-10s%-10s%-10s%-5s%s\n",$1,$2,$3,$4,$5,$6}'
2
Sumit Chauhan