Jawaban ini upaya untuk alamat yves ini keasyikan berikut:
Saya lebih suka tidak memiliki alias untuk setiap kombinasi opsi (1)
dan
meskipun menunjukkan '/' merah (2)
dan (3)
menambahkan informasi penting ke output yang bervariasi, yaitu dfbaris header yang berubah sesuai dengan flag yang disediakan.
(1) Anda perlu function, karena menurut definisi dibutuhkan argumen. Dan, sangat mudah untuk didefinisikan dan digunakan karena Anda akan menemukan di bawah ini.
(2) merah /dihasilkan oleh grep --color, yang merupakan alias umum untuk grepdirinya sendiri (Anda dapat memeriksanya dengan menjalankan alias).
kode
function df1
{
df $* | sed -n '1p;/^\//p;'
}
Baris baru di atas dimaksudkan untuk meningkatkan keterbacaan, Anda dapat menggantinya dengan ruang.
Salin dan tempel cuplikan ini langsung ke sesi pesta interaktif atau, bahkan lebih baik, tambahkan ke ~/.bashrc.
Contoh penggunaan
$ 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% /
Apa yang dilakukannya
Fungsi df1panggilan dfdengan argumen apa pun yang Anda berikan dan pipa ( |) output untuk sed, yang dipanggil dengan -nuntuk menekan pencetakan otomatis dari ruang pola. Selebihnya mengekspresikan "skrip", dua sebenarnya:
- skrip
1pmencetak baris pertama, yang dalam kasus kami adalah dftajuk (saya menggunakan hal yang sama untuk psperpipaan),
- skrip
/^\//pcocok dengan semua baris yang dimulai dengan /, lalu mencetaknya
; memisahkan skrip 2 sed
df --type ntfstidak menampilkan partisi 5 ntfs dan karenanya melewatkannya untuk saya