Dalam Linux, nama penuh du ialah "Penggunaan Cakera", iaitu arahan untuk mengira ruang cakera yang diduduki oleh direktori atau fail Sintaks ialah "du [pilihan] [direktori atau nama fail]. ". Perintah du menyokong pelbagai pilihan: 1. "-h", yang boleh memaparkan saiz dalam unit yang mudah dibaca 2. "-s", yang boleh memaparkan jumlah saiz direktori; d", dll.
Persekitaran pengendalian tutorial ini: sistem linux5.9.8, komputer Dell G3.
linux du command
du ialah singkatan daripada Disk Usage, salah satu arahan paling popular di Linux, du ialah direktori statistik atau fail Perintah yang menduduki ruang cakera
Format arahan du adalah seperti berikut:
du [选项] [目录或文件名]
Pilihan yang biasa digunakan adalah seperti berikut:
-a: Paparkan saiz semua fail dan folder dalam direktori
-h: Paparkan saiz dalam unit yang mudah dibaca seperti Kb, Mb, Gb, dsb.
--si: Serupa dengan pilihan -h, tetapi pengiraan adalah berdasarkan 1000 dan bukannya 1024
- s: Paparkan jumlah saiz direktori
-d: ialah singkatan bagi pilihan --max-depth=N, menunjukkan tahap direktori mana yang perlu dilalui dalam Direktori yang melebihi yang ditentukan bilangan tahap akan diabaikan
-c: kecuali untuk paparan Selain saiz direktori, baris tambahan memaparkan jumlah penggunaan
--time: memaparkan masa fail yang paling baru diubah suai dalam setiap direktori
-t : ialah singkatan daripada --threshold=SIZE, menapis fail dan direktori yang lebih kecil daripada SIZE
--exclude=PATTERN: menapis keluar nama fail atau nama direktori yang sepadan dengan PATTERN
Contoh penggunaan
Paparkan semua direktori dan saiz fail
Contoh di bawah Memaparkan saiz semua direktori dan fail di bawah direktori Unit lalai ialah Kb
[root@ecs-centos-7 tt]# du -a temp/ 4 temp/suba.txt 4 temp/test/abc.txt 4 temp/test/ha/ha.txt 8 temp/test/ha 16 temp/test 4 temp/time.txt 28 temp/
Nota: Jika pilihan -a tidak digunakan dalam contoh di atas, hanya saiz direktori akan dipaparkan secara lalai, dan saiz fail tidak akan dipaparkan. Iaitu, melaksanakan du temp/
hanya akan memaparkan saiz direktori Sila lihat contoh berikut:
[root@ecs-centos-7 tt]# du temp 8 temp/test/ha 16 temp/test 28 temp
Paparan dengan cara yang mudah dibaca
. Saiz lalai yang dipaparkan hanyalah satu Nombor tunggal, tanpa unit genap, membuat orang kelihatan sedikit keliru pada pandangan pertama Pilihan -h boleh digunakan untuk memaparkan saiz dalam cara yang boleh dibaca oleh manusia digunakan
[root@ecs-centos-7 tt]# du -b temp/ 4117 temp/test/ha 8218 temp/test 12326 temp/ [root@ecs-centos-7 tt]# du -h temp/ 8.0K temp/test/ha 16K temp/test 28K temp/ [root@ecs-centos-7 tt]# du --si temp/ 8.2k temp/test/ha 17k temp/test 29k temp/
Dalam contoh di atas, asas pengiraan lalai bagi pilihan -h ialah 1024, dan asas pengiraan lalai bagi pilihan --si ialah 1000
Jaditemp/test/ha
saiz direktori yang dikira dengan pilihan -h ialah 8.0K, manakala saiz yang dikira dengan pilihan --si Saiznya ialah 8.2K
Unit saiz pilihan -h dan --si dilaraskan secara automatik dengan saiz direktori dan fail
Jumlah saiz direktori
Kadangkala kita hanya perlu mengetahui jumlah saiz direktori, dan tidak perlu mengetahui saiz subdirektori dan fail di bawah subdirektori Kita boleh mendapatkan jumlah saiz direktori melalui pilihan -s
[root@ecs-centos-7 tt]# du -sh . 72K . [root@ecs-centos-7 tt]# du -sh temp/ 28K temp/
Contoh di atas masing-masing memperoleh saiz semasa daripada temp/ direktori
Jumlah saiz direktori juga boleh diperolehi melalui pilihan -c, tetapi ia memaparkan saiz subdirektori dahulu, dan baris terakhir memaparkan jumlah saiz baris terakhir contoh di bawah mengandungi total
aksara 28K di hadapan rentetan mewakili jumlah saiz direktori temp/
[root@ecs-centos-7 tt]# du -ch temp/ 8.0K temp/test/ha 16K temp/test 28K temp/ 28K total
Nyatakan kedalaman direktori
Jika direktori mempunyai banyak subdirektori, anda hanya mahu memaparkan bilangan direktori yang ditentukan Jika saiznya kecil, anda boleh menggunakan pilihan -d untuk melaksanakan struktur subdirektori
temp/ seperti berikut:
[root@ecs-centos-7 tt]# tree -d temp/ temp/ └── test └── ha 2 directories
Nyatakan kedalaman direktori
[root@ecs-centos-7 tt]# du -d 0 temp/ 28 temp/ [root@ecs-centos-7 tt]# du -d 1 temp/ 16 temp/test 28 temp/ [root@ecs-centos-7 tt]# du --max-depth=2 temp/ 8 temp/test/ha 16 temp/test 28 temp/
du -d 0 temp/
: Paparkan direktori Tahap 0 pertama, iaitu jumlah saiz direktori semasa, bersamaan dengan pilihan -s
du -d 1 temp/
: memaparkan direktori tahap pertama, iaitu jumlah saiz direktori temp/test
du --max-depth=2 temp/
: Paparkan jumlah saiz direktori tahap kedua, iaitu temp/test /ha direktori
Paparkan masa pengubahsuaian terkini
[root@ecs-centos-7 tt]# du --time temp 8 2020-07-21 20:11 temp/test/ha 16 2020-07-21 20:11 temp/test 28 2020-07-21 20:13 temp
Seperti yang ditunjukkan dalam contoh di atas Masa pengubahsuaian terakhir setiap direktori, butiran masa hanya tepat untuk minit
Jika anda ingin memaparkan butiran yang lebih halus, anda boleh menggunakan pilihan --time-syle=STYLE untuk menentukan format output masa, dengan STYLE mewakili tarikh Rentetan output yang diformatkan adalah sama seperti output terformat bagi perintah date
Contoh 1: Paparkan bilangan saat dalam masa UTC (bilangan saat dari 1 Januari 1970 hingga sekarang)
[root@ecs-centos-7 tt]# du --time --time-style="+%s" temp/ 8 1595333498 temp/test/ha 16 1595333514 temp/test 28 1595333582 temp/
Contoh 2: Paparkan tahun, bulan, hari, jam, minit dan saat yang lengkap
[root@ecs-centos-7 tt]# du --time --time-style="+%F %T" temp/ 8 2020-07-21 20:11:38 temp/test/ha 16 2020-07-21 20:11:54 temp/test 28 2020-07-21 20:13:02 temp/
Tapis mengikut saiz
Tapis daripada hasil yang dipaparkan Alih keluar direktori dan fail saiz yang ditentukan
[root@ecs-centos-7 tt]# du -b temp/ 4117 temp/test/ha 8218 temp/test 12326 temp/ [root@ecs-centos-7 tt]# du -b -t 4118 temp/ 8218 temp/test 12326 temp/
Dalam contoh di atas, direktori yang lebih kecil daripada 4118 bait ditapis keluar
Tapis mengikut nama direktori atau nama fail
Jika terdapat terlalu banyak subdirektori dalam direktori, kita boleh memadankan nama subdirektori atau nama fail dengan rentetan corak yang ditentukan untuk menapis direktori dan fail yang sepadan
[root@ecs-centos-7 tt]# du -a temp 4 temp/suba.txt 4 temp/test/abc.txt 4 temp/test/ha/ha.txt 8 temp/test/ha 16 temp/test 4 temp/time.txt 28 temp [root@ecs-centos-7 tt]# du -a --exclude=*a* temp/ 4 temp/test 4 temp/time.txt 12 temp/
Dalam contoh di atas, tapis Rentetan corak ialah : *a*
Ia bermaksud menapis direktori atau fail yang nama direktori atau nama failnya mengandungi aksara a
Dalam contoh, direktori atau nama fail dalam empat baris pertama semuanya mengandungi a
aksara, supaya semuanya ditapis
Fail apakah yang mengisi cakera?
Masalah yang sering dihadapi oleh pembangun ialah cakera penuh Anda boleh menggunakan du dan sort dalam kombinasi untuk mencari "pesalah"
[root@ecs-centos-7 tt]# du -sh temp/* | sort -hr 10M temp/clpay.tar 16K temp/test 4.0K temp/time.txt 4.0K temp/lnsuba
[root@ecs-centos-7 tt]# du -ah temp/* | sort -hr 10M temp/clpay.tar 16K temp/test 8.0K temp/test/ha 4.0K temp/time.txt 4.0K temp/test/ha/ha.txt 4.0K temp/test/abc.txt 4.0K temp/lnsuba
[root@ecs-centos-7 tt]# du -ah temp/* | sort -hr | head -n 3 10M temp/clpay.tar 16K temp/test 8.0K temp/test/ha
相关推荐:《Linux视频教程》
Atas ialah kandungan terperinci apa itu linux du. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!