El comando "df -h" pone saltos de línea en la salida. ¿Cómo lo soluciono?


14

Mi comando "df -h" en mi caja de Linux tiene algunos dispositivos con nombres más largos, por lo que la salida "df -h" tiene saltos de línea (o pestañas ??), lo que hace que sea difícil analizar la salida en un script.

¿Alguien sabe cómo puedo suprimir los saltos de línea para que la última de las siguientes salidas sea lo que obtengo:

[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

Y el formato deseado es:

[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
No puedo probar esto porque mis caminos de disco no son tan grandes como los tuyos. Pruebadf -Pkh
user606723

1
@ user606723: ¿por qué no ponerlo en una respuesta?
enzotib

Lo acabo de hacer ahora. = p. Al principio no lo puse en respuesta porque era una suposición evidente al mirar el archivo man durante dos segundos.
user606723

1
El uso de -hy -kjuntos no tiene sentido ya que se contradicen entre sí y el último dado "gana" (es decir, df -hkda salida a 1024 bloques mientras df -khda salida legible para humanos ).
PerlDuck

Respuestas:


18

Tratar: df -Pkh

La P significa "portátil" y lo obligará a seguir la salida estándar POSIX.
Tengo el presentimiento de que solucionará cualquier formato inteligente que df intente hacer.

En el futuro, cuando intente resolver problemas como estos, intente man dfver si puede encontrar algo que parezca que podría funcionar ... porque eso es lo que hice =)


Ack Estaba usando "df --help" en lugar de "man df". Gracias por el recordatorio.
djangofan

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.