Il comando "df -h" inserisce le interruzioni di riga nell'output. Come posso risolvere?


14

Il mio comando "df -h" sul mio box Linux ha alcuni dispositivi con nomi più lunghi e quindi l'output "df -h" contiene interruzioni di riga (o tabs ??), il che rende difficile analizzare l'output in uno script.

Qualcuno sa come posso sopprimere le interruzioni di linea in modo che quest'ultimo dei seguenti output sia quello che ottengo:

[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

E il formato desiderato è:

[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
Non posso provarlo perché i miei percorsi non sono enormi come i tuoi. Provadf -Pkh
user606723

1
@ user606723: perché non inserirlo in una risposta?
enzotib,

L'ho fatto proprio ora. = p. All'inizio non ho inserito una risposta perché era un'evidente ipotesi guardare il file man per due secondi.
user606723

1
L'uso di -he -kinsieme è inutile in quanto si contraddicono a vicenda e l'ultimo dato "vince" (cioè df -hk1024 blocchi di output mentre df -khdà output leggibile dall'uomo ).
PerlDuck,

Risposte:


18

Provare: df -Pkh

La P sta per "portatile" e la forzerà a seguire l'output standard POSIX.
Ho un sospetto che risolverà qualsiasi formattazione intelligente che df cerca di fare.

In futuro, quando proverai a risolvere problemi come questi, prova a man dfvedere se riesci a trovare qualcosa che potrebbe funzionare ... perché è quello che ho fatto =)


Ack. Stavo usando "df --help" piuttosto che "man df". grazie per il promemoria.
Djangofan,

2
 df -Ph | awk '{printf "%-35s%-10s%-10s%-10s%-5s%s\n",$1,$2,$3,$4,$5,$6}'
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.