Questa risposta tenta di rispondere alle seguenti preoccupazioni di Yves:
Preferirei non avere un alias per ogni combinazione di opzioni (1)
e
sebbene mostri '/' in rosso (2)
e (3)
aggiungere un'informazione importante all'output variabile, che è df
la riga di intestazione che cambia in base ai flag forniti.
(1) È necessario function
, perché per definizione accetta argomenti. Ed è molto semplice da definire e utilizzare come scoprirai di seguito.
(2) il rosso /
è prodotto da grep --color
, che è un alias comune a grep
se stesso (puoi verificarlo eseguendolo alias
).
codice
function df1
{
df $* | sed -n '1p;/^\//p;'
}
Le nuove righe sopra hanno lo scopo di migliorare la leggibilità, è possibile sostituirle con lo spazio.
Copia e incolla questo snippet direttamente in una sessione bash interattiva o, ancora meglio, aggiungilo al tuo ~/.bashrc
.
Esempio di utilizzo
$ df1
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/disk1 487358464 316093104 171009360 65% /
/dev/disk2 524032 302620 221412 58% /Volumes/Packer
$ df1 -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/disk1 hfs 465G 302G 164G 65% /
/dev/disk2 hfs 512M 296M 217M 58% /Volumes/Packer
$ df1 -hT .
Filesystem Type Size Used Avail Use% Mounted on
/dev/disk1 hfs 465G 302G 164G 65% /
Cosa fa
La funzione df1
chiama df
con qualunque argomento lo passi e convoglia |
l'output ( ) con sed
cui viene invocato -n
per sopprimere la stampa automatica dello spazio del modello. Il resto esprime gli "script" di sed, due in realtà:
- lo script
1p
stampa la prima riga, che nel nostro caso è df
l'intestazione (io uso lo stesso per il ps
piping),
- lo script
/^\//p
corrisponde a qualsiasi riga che inizia con /
, quindi lo stampa
;
separa i 2 script sed
df --type ntfs
non mostra partizioni 5 ntfs e quindi saltandole in conseguenza per me