Saya ingin hanya dapat menunjukkan penggunaan disk untuk partisi tertentu dalam GB dan% setelahnya. Pada dasarnya abaikan swap, tmpfs, dll.
Saya juga ingin menjumlahkan jumlah penggunaan disk dan mengurangi dari total untuk mendapatkan ruang kosong.
Saat ini saya memiliki sesuatu seperti ini, tetapi tidak yakin bagaimana menggunakan awk dan memilih partisi yang ingin saya hitung.
df -h | awk '$5 ~ /\%$/ print $1 " " $5}'
Ini untuk sistem debian.
Edit:
Jadi saya tahu saya dapat menggunakan / untuk membatasi hasil, namun, ini hanya menunjukkan saya berapa banyak yang gratis.
df -h / | awk '{ a = $4 } END { print a }'
grep
?df -h
sudah menyediakan diAvail
kolom?df
harus menerima mountpoint sebagai argumen. Bahkan bisa berupa direktori atau file di bawah mountpoint. Alat kemudian akan menampilkan informasi hanya untuk mountpoint yang sesuai. Cobalah:df -h /tmp
ataudf -h /dev/urandom
. Anda dapat menentukan beberapa argumen dengan cara itu.df -x tmpfs
benarJawaban:
Saya tidak yakin apa yang ingin Anda lakukan
awk
, tetapi Anda menyulitkan ekspresi tidak perlu. Yang Anda butuhkan untuk mengeluarkan sistem file, ruang kosong, dan persentase hunian adalah:Namun, ini tidak akan menyelaraskan header dengan data. Untuk mempertahankan penyelarasan, gunakan sesuatu seperti:
Di sini saya telah menggunakan bidang pertama yang luas karena disk sistem saya terdaftar oleh UUID. Untuk menampilkan persentase ruang kosong alih-alih hunian, Anda dapat menggunakan:
Dalam hal ini
%
tanda diabaikan dalam ekspresi aritmatika. Saya tidak tahudf
bulatkan persentase ke bilangan bulat terdekat, seperti yang saya asumsikan. Jika dibulatkan, maka100-$5
akan ditangkap, jadi gunakan saja99-$5
untuk mendapatkan ruang kosong dibulatkan.sumber
Pertanyaannya tidak menunjukkan dengan tepat apa output yang diinginkan tetapi tampaknya ini cocok dengan yang Anda inginkan:
String
Filesystem
disertakan sehingga output menunjukkan tajuk kolom ramah-manusia. Itu/dev/
string disertakan karena menghilangkan sistem udev dan tmpfs.sumber