Metadata adalah data mengenai data. Ukuran yang jelas adalah ukuran data yang penting bagi pengguna komputer biasa. Kandungan (teks) surat, gambar, video, dan lain-lain pengguna, merupakan ukuran yang jelas. Data ini tidak disimpan secara sewenang-wenangnya di dalam komputer. Data berukuran jelas mesti disimpan secara terkawal. Ia mesti dikenal pasti. Ia mesti lengkap. Terdapat syarat lain untuknya. Beberapa data tambahan diperlukan untuk mencapai keperluan tambahan ini, dan data tambahan ini adalah meta-data.
Ingat, hanya ada satu direktori dalam jumlah. Selebihnya adalah sub-direktori. Direktori root menimbulkan sub-direktori, yang menyebabkan sub-direktori lain akan turun. Walau bagaimanapun, sub-direktori biasanya hanya dipanggil direktori. Oleh itu, hanya ada satu pokok direktori.
Jadi, ls -s tidak berguna untuk mendapatkan ukuran direktori. Perintah mana yang berguna? - Perintah du. du bermaksud Penggunaan Disk. Ia mencetak penggunaan cakera dari direktori.
Artikel ini menerangkan pelbagai ciri perintah du di Linux, yang menyediakan cara pengaturcara yang berbeza untuk mengetahui ukuran direktori dan sub-direktori mereka. Bash adalah shell yang digunakan untuk contoh kod artikel ini.
Kandungan Artikel
- du tanpa Pilihan atau Hujah
- Saiz Direktori Lain
- saiz jelas
- Perintah sudo
- Tidak termasuk Penyertaan mengikut Saiz
- kecualikan = POLA
- Kesimpulannya
du tanpa Pilihan atau Hujah
Direktori kerja semasa adalah direktori yang sedang digunakan pengguna. Petunjuk biasanya menunjukkan direktori kerja semasa. Menaip du tanpa pilihan dan hujah, seperti:
daripada
dan kemudian menekan butang Enter akan memaparkan penggunaan cakera untuk semua sub-direktori dari direktori kerja semasa. Ia akan memaparkan maklumat ini untuk sub-pokok direktori kerja semasa. Titik pada paparan mewakili direktori kerja semasa.
Setiap jalur sub-pohon ditunjukkan dalam satu garis, di paparan. Setiap baris bermula dengan ukuran direktori (yang merupakan nama belakang di jalan). Paparannya mungkin seperti:
8./dir1/dir2/dir3/dir412./dir1/dir2/dir3
16./dir1/dir2
dua puluh./dir1
Perhatikan bahawa tidak jelas apakah ukurannya dalam byte atau kilobyte atau megabait atau gigabait. Kilobyte simbol, K bermaksud 1024 bait; Megabait simbol, M bermaksud 1,048,576 bait; Simbol Gigabait, G bermaksud 1,073,741,824 bait. Untuk kelipatan yang akan ditunjukkan, pilihan -h (suis) harus digunakan, seperti berikut:
daripada -hPaparannya akan kelihatan seperti ini:
8.0K./dir1/dir2/dir3/dir412K./dir1/dir2/dir3
16K./dir1/dir2
20K./dir1
Apabila pilihan -h digunakan, ukuran dikatakan dalam bentuk yang boleh dibaca.
Catatan: dengan pilihan –semua, perintah du juga akan memberikan penggunaan cakera untuk fail; namun, penggunaan cakera untuk fail tidak akan dibahas dalam artikel ini.
Saiz Direktori Lain
Jalan mutlak khas untuk volume Linux adalah seperti berikut:
/kediaman/john/katakan/dirTwo/dirTiga/dirFourYang pertama / adalah direktori root. Direktori ini mempunyai sub-direktori langsung, termasuk direktori utama. Direktori rumah mempunyai direktori pengguna. Sekiranya nama pengguna adalah John, dia boleh menamakan direktori pengguna, john. Direktori pengguna dikenal pasti oleh ~. Jadi, pengguna boleh menggunakan perintah cd ~ untuk mencapai direktori dari mana-mana direktori. dirOne adalah direktori yang dibuat oleh pengguna. Pengguna juga boleh membuat direktori lain pada tahap ini. dirTwo, dirThree dan dirFour adalah sub-direktori ke direktori sebelumnya, yang dibuat oleh pengguna.
Pengguna dapat mengetahui ukuran direktori lain dan subdirektorinya (sub-pohon) dari direktori mana pun, dengan melewati jalan mutlak sebagai argumen. Contohnya, jika penggunaan cakera diperlukan,
/kediaman/john/katakan/dirTwomaka arahannya adalah:
daripada -h /kediaman/john/katakan/dirTwoatau
daripada -h~/katakan/dirTwodi mana ~ mewakili direktori pengguna.
Untuk menggunakan jalan relatif, pengguna mesti berada di direktori induk yang sesuai. Contohnya, jika arahan ditunjukkan,
john@tuan rumah: ~/katakan $bermaksud pengguna berada di direktori, / home / john / dirOne, maka perintah berikut akan memberikan hasil yang sama dengan perintah di atas:
daripada -hdirTwoJalannya masih relatif. Untuk memaparkan maklumat yang sama untuk direktori semasa, jangan gunakan argumen, atau gunakan titik.
Skema ini dapat digunakan untuk mendapatkan ukuran hanya satu direktori, yang terakhir dalam jalur (didahului dengan jalur). Adalah mungkin untuk mendapatkan ukuran direktori di tengah jalan - lihat exclude = POLA di bawah.
Jumlah keseluruhan
Jumlah keseluruhan direktori yang terlibat dapat dihasilkan. Untuk situasi di atas, arahannya adalah:
daripada -h - keseluruhansaiz jelas
Ukuran yang jelas biasanya lebih kecil daripada penggunaan cakera. Walau bagaimanapun, dalam beberapa keadaan, ukuran jelas lebih besar daripada penggunaan cakera; akal - lihat kemudian. Perintah untuk mendapatkan ukuran yang jelas untuk jalan relatif di atas adalah:
daripada -h - saiz yang jelasdirTwoKedalaman Maksimum
Dengan –max-kedalaman = 0, du mencetak ukuran hanya direktori kerja semasa; dengan du –max-kedalaman = 1, du mencetak ukuran direktori kerja semasa dan ukuran semua sub-direktori peringkat pertama; dengan –max-deep = 2, du mencetak ukuran direktori kerja semasa dan ukuran semua sub-direktori peringkat pertama, dan semua sub-direktori peringkat kedua; dengan –max-deep = 3, du mencetak ukuran direktori semasa dan semua sub-direktori peringkat pertama, dan semua sub-direktori tahap kedua, dan semua sub-direktori tahap ketiga; ini berterusan dengan peningkatan nilai kedalaman maksimum. Contoh penggunaannya adalah:
daripada -h - kedalaman max=2Perintah sudo
Salah satu direktori dengan sub-direktori tersendiri dalam direktori root adalah var. Sekiranya pengguna menaip
daripada -h /di manadan menekan Enter, dia akan menyedari bahawa kebenaran ditolak untuk beberapa direktori. Artinya, dia tidak dapat mengetahui ukuran beberapa direktori. Kebenaran ditolak kerana pengguna bukan pengguna super. Superuser mempunyai hak istimewa untuk melihat ukuran (penggunaan cakera) dari direktori tersebut. Jadi, agar pengguna memperoleh hak istimewa itu, dia harus menggunakan perintah sudo seperti berikut:
sudo daripada -h /di manaSekiranya shell meminta pengguna untuk kata laluannya, pengguna mesti memasukkan kata laluan dan tekan Enter. Dengan perintah sudo, pengguna biasa (pengaturcara) dapat melihat ukuran semua direktori dalam direktori var dan direktori serupa.
Tidak termasuk Penyertaan mengikut Saiz
Pilihan –threshold = SIZE tidak akan membenarkan senarai direktori yang ukurannya kurang daripada SIZE. Untuk jalan,
/kediaman/john/katakan/dirTwo/dirTiga/dirFourdengan arahan pada[dilindungi e-mel]: ~ $, maka
daripada -h - tahap awal= 12K dirOnedi mana 12K bermaksud 12 kilobyte, tidak akan memaparkan garis untuk direktori yang penggunaan cakera kurang dari 12K.
–Kecualikan = POLA
Pilihan dan nilai ini dapat menghilangkan baris direktori yang tidak diinginkan pengguna dalam penyenaraian.
Untuk menghilangkan baris untuk direktori terakhir, dirFour dari jalan
/kediaman/john/katakan/dirTwo/dirTiga/dirFourarahannya hendaklah:
daripada -h --kecualikan= katakan/dirTwo/dirTiga/dirFour dirOneHasilnya akan menjadi seperti,
4.0K dirOne/dirTwo/dirTiga8.0K dirOne/dirTwo
12K dirOne
Catatan: ukuran belum termasuk ukuran direktori tahap terakhir (dirFour) jalan.
Pilihan ini hanya mempunyai ukuran direktori kedalaman atas dan sub-pokoknya, tidak mempunyai direktori kedalaman bawah. Jadi dengan perintah,
daripada -h --kecualikan= katakan/dirTwo/dirTiga dirOneoutput akan menjadi seperti,
4.0K dirOne/dirTwo
8K dirOne
Catatan: ukuran tidak termasuk ukuran direktori tuas bawah pokok.
Pertimbangkan sekali lagi, pautan mutlak,
/kediaman/john/katakan/dirTwo/dirTiga/dirFourPerintah berikut akan memperoleh penggunaan disk hanya direktori dirTwo, yang merupakan direktori dalam lintasan. Perintahnya adalah:
daripada -h --kecualikan=/kediaman/john/katakan/dirTwo/ * /kediaman/john/katakan/dirTwoArgumen itu mempunyai semua direktori sebelumnya hingga yang dimaksud. Nilai tidak termasuk memiliki semua direktori sebelumnya, diakhiri dengan *, tepat setelah yang dimaksud. * bermaksud semua sub-direktori pada tahap itu (dan sub-pokoknya). Hasilnya akan menjadi seperti,
5.0K/kediaman/john/katakan/dirTwoKesimpulannya
Mencuba mengetahui ukuran direktori dengan arahan ls -s adalah mengelirukan. Dengan itu, hanya data meta direktori yang diperoleh. Untuk mengetahui penggunaan disk dari direktori, perintah du harus digunakan. Apabila digunakan dengan pilihan -h, ukuran direktori dapat dibaca. Ukuran yang jelas dapat diperoleh dengan menggunakan pilihan ukuran yang jelas. Tanpa pilihan dan argumen, perintah du hanya memaparkan ukuran semua subdirektori dari direktori semasa, termasuk dari direktori semasa. Argumen untuk du adalah jalan, yang mungkin bermula dari akar. Pilihan dan sebilangan nilainya menentukan dengan tepat direktori mana yang ditangani. Perintah sudo memberikan hak pengguna superuser biasa secara lalai.