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 è dfla 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 grepse 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 df1chiama dfcon qualunque argomento lo passi e convoglia |l'output ( ) con sedcui viene invocato -nper sopprimere la stampa automatica dello spazio del modello. Il resto esprime gli "script" di sed, due in realtà:
- lo script
1pstampa la prima riga, che nel nostro caso è dfl'intestazione (io uso lo stesso per il pspiping),
- lo script
/^\//pcorrisponde a qualsiasi riga che inizia con /, quindi lo stampa
; separa i 2 script sed
df --type ntfsnon mostra partizioni 5 ntfs e quindi saltandole in conseguenza per me