Lệnh Linux du (Disk Usage) là một lệnh tiêu chuẩn Unix/Linux được sử dụng để kiểm tra thông tin về việc sử dụng đĩa của các tệp và thư mục trên máy tính.
Lệnh du có nhiều tùy chọn tham số có thể được sử dụng để có kết quả ở nhiều định dạng khác nhau. Lệnh du cũng hiển thị kích thước của các tệp và thư mục theo cách đệ quy.
Bài viết này giải thích các lệnh ‘du‘ hữu ích kèm theo ví dụ, giúp bạn xác định kích thước của các tệp và thư mục trong Linux. Thông tin được cung cấp trong bài viết này được lấy từ trang man của lệnh du.
Cách tìm kích thước của thư mục trong Linux
1. Để thu được tổng quan về việc sử dụng đĩa cho cây thư mục ‘/home/tecmint‘ và các thư mục con của nó, sử dụng lệnh sau.
# du /home/tecmint
4 /home/tecmint/bin
4 /home/tecmint/.ffbinaries-cache
672 /home/tecmint/.openjfx/cache/17.0.3-ea
676 /home/tecmint/.openjfx/cache
680 /home/tecmint/.openjfx
36 /home/tecmint/.ssh
92 /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96 /home/tecmint/.config/xfce4/xfconf
12 /home/tecmint/.config/xfce4/desktop
...
56758808 /home/tecmint
Kết quả của lệnh trên hiển thị số lượng khối đĩa trong thư mục /home/tecmint kèm các dấu gạch chân của nó.
Tìm kích thước đĩa của thư mục
Cách tìm kích thước thư mục ở định dạng mà con người có thể đọc được
2. Bằng cách sử dụng tùy chọn '-h'
cùng với lệnh ‘du‘, bạn có thể nhận được kết quả theo ‘định dạng dễ đọc cho con người‘, cho phép bạn xem kích thước theo đơn vị như Byte, Kilobyte, Megabyte, Gigabyte, v.v.
# du -h /home/tecmint
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
672K /home/tecmint/.openjfx/cache/17.0.3-ea
676K /home/tecmint/.openjfx/cache
680K /home/tecmint/.openjfx
36K /home/tecmint/.ssh
92K /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96K /home/tecmint/.config/xfce4/xfconf
12K /home/tecmint/.config/xfce4/desktop
...
55G /home/tecmint
Kiểm tra việc sử dụng đĩa của thư mục
Cách tìm tổng kích thước của một thư mục trong Linux
3. Để thu được tổng kích thước việc sử dụng đĩa tổng của một thư mục, sử dụng tùy chọn '-s'
như sau.
# du -sh /home/tecmint
55G /home/tecmint
Tìm kích thước thư mục trong Linux
4. Sử dụng tùy chọn '-a'
cùng với lệnh ‘du‘ sẽ hiển thị kích thước đĩa của tất cả các tệp và thư mục.
# du -a /home/tecmint
4 /home/tecmint/fix-deb-src-error-ubuntu
4 /home/tecmint/tecmint.py
0 /home/tecmint/bin/FoxitReader
4 /home/tecmint/bin
4 /home/tecmint/.ffbinaries-cache
52 /home/tecmint/Eclipse-with-PyDev.jpg
300 /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16 /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64 /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512 /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
...
56759528 /home/tecmint
Kiểm tra kích thước tệp và thư mục
5. Sử dụng tùy chọn '-a'
cùng với '-h'
sẽ hiển thị kích thước đĩa của tất cả các tệp và thư mục theo định dạng dễ đọc cho con người. Kết quả được hiển thị dễ hiểu hơn, vì nó hiển thị kích thước tệp theo đơn vị như Kilobyte, Megabyte, v.v.
# du -ah /home/tecmint
4.0K /home/tecmint/fix-deb-src-error-ubuntu
4.0K /home/tecmint/tecmint.py
28K /home/tecmint/download.php?file=%2Foomph%2Fepp%2F2023-06%2FR%2Feclipse-inst-jre-linux64.tar.gz.1
0 /home/tecmint/bin/FoxitReader
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
52K /home/tecmint/Eclipse-with-PyDev.jpg
300K /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16K /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64K /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512K /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
...
55G /home/tecmint
Liệt kê kích thước tệp và thư mục
6. Để xác định việc sử dụng đĩa của cây thư mục và các thư mục con theo khối Kilobyte, sử dụng tùy chọn '-k'
(hiển thị kích thước theo đơn vị 1024 byte).
# du -k /home/tecmint
4 /home/tecmint/bin
4 /home/tecmint/.ffbinaries-cache
672 /home/tecmint/.openjfx/cache/17.0.3-ea
676 /home/tecmint/.openjfx/cache
680 /home/tecmint/.openjfx
8 /home/tecmint/.uk.co.screamingfrog.seospider.ui.b/webview
12 /home/tecmint/.uk.co.screamingfrog.seospider.ui.b
36 /home/tecmint/.ssh
92 /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96 /home/tecmint/.config/xfce4/xfconf
12 /home/tecmint/.config/xfce4/desktop
4 /home/tecmint/.config/xfce4/xfwm4
8 /home/tecmint/.config/xfce4/panel/launcher-18
8 /home/tecmint/.config/xfce4/panel/launcher-17
8 /home/tecmint/.config/xfce4/panel/launcher-14
8 /home/tecmint/.config/xfce4/panel/launcher-3
8 /home/tecmint/.config/xfce4/panel/launcher-16
8 /home/tecmint/.config/xfce4/panel/launcher-5
...
56769128 /home/tecmint
7. Để thu được tổng kích thước sử dụng đĩa cho cây thư mục, bao gồm cả các thư mục con, theo đơn vị Megabyte (MB), sử dụng tùy chọn '-mh'
như sau. Tùy chọn '-m'
đếm các khối theo đơn vị MB và '-h'
để định dạng dễ đọc cho con người.
# du -mh /home/tecmint
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
672K /home/tecmint/.openjfx/cache/17.0.3-ea
676K /home/tecmint/.openjfx/cache
680K /home/tecmint/.openjfx
8.0K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b/webview
12K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b
36K /home/tecmint/.ssh
92K /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96K /home/tecmint/.config/xfce4/xfconf
12K /home/tecmint/.config/xfce4/desktop
4.0K /home/tecmint/.config/xfce4/xfwm4
8.0K /home/tecmint/.config/xfce4/panel/launcher-18
8.0K /home/tecmint/.config/xfce4/panel/launcher-17
8.0K /home/tecmint/.config/xfce4/panel/launcher-14
8.0K /home/tecmint/.config/xfce4/panel/launcher-3
...
55G /home/tecmint
8. Cờ '-c'
hiển thị tổng bộ không gian sử dụng đĩa ở dòng cuối cùng. Nếu thư mục của bạn chiếm 55GB không gian, thì hai dòng cuối cùng của kết quả hiển thị như sau.
# du -ch /home/tecmint
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
672K /home/tecmint/.openjfx/cache/17.0.3-ea
676K /home/tecmint/.openjfx/cache
680K /home/tecmint/.openjfx
8.0K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b/webview
12K /home/tecmint/.uk.co.screamingfrog.seospider.ui.b
36K /home/tecmint/.ssh
92K /home/tecmint/.config/xfce4/xfconf/xfce-perchannel-xml
96K /home/tecmint/.config/xfce4/xfconf
12K /home/tecmint/.config/xfce4/desktop
4.0K /home/tecmint/.config/xfce4/xfwm4
8.0K /home/tecmint/.config/xfce4/panel/launcher-18
8.0K /home/tecmint/.config/xfce4/panel/launcher-17
8.0K /home/tecmint/.config/xfce4/panel/launcher-14
8.0K /home/tecmint/.config/xfce4/panel/launcher-3
8.0K /home/tecmint/.config/xfce4/panel/launcher-16
...
55G /home/tecmint
55G total
Cách loại trừ tệp bằng lệnh du
9. Lệnh sau tính toán và hiển thị việc sử dụng đĩa của tất cả các tệp và thư mục, loại trừ các tệp khớp với mẫu đã cho.
Trong ví dụ cung cấp, lệnh loại trừ các tệp '.txt'
khi tính toán kích thước tổng của một thư mục. Phương pháp này cho phép bạn loại trừ các định dạng tệp cụ thể bằng cách sử dụng cờ '--exclude'
.
Sau khi xem lại kết quả, bạn sẽ thấy không có mục nhập cho các tệp '.txt'
.
# du -ah --exclude="*.txt" /home/tecmint
4.0K /home/tecmint/fix-deb-src-error-ubuntu
4.0K /home/tecmint/tecmint.py
0 /home/tecmint/bin/FoxitReader
4.0K /home/tecmint/bin
4.0K /home/tecmint/.ffbinaries-cache
52K /home/tecmint/Eclipse-with-PyDev.jpg
300K /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16K /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64K /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512K /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
28K /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_freetype.so
672K /home/tecmint/.openjfx/cache/17.0.3-ea
...
55G /home/tecmint
Cách tìm mức sử dụng thư mục theo thời gian sửa đổi
10. Để hiển thị việc sử dụng đĩa dựa trên thời gian sửa đổi, sử dụng cờ '--time'
như thể hiện bên dưới.
# du -ha --time /home/tecmint
4.0K 2023-07-06 13:15 /home/tecmint/fix-deb-src-error-ubuntu
4.0K 2023-06-14 12:50 /home/tecmint/tecmint.py
0 2021-12-07 12:26 /home/tecmint/bin/FoxitReader
4.0K 2021-12-07 12:26 /home/tecmint/bin
4.0K 2022-10-10 11:02 /home/tecmint/.ffbinaries-cache
52K 2023-05-12 12:09 /home/tecmint/Eclipse-with-PyDev.jpg
300K 2023-07-27 14:02 /home/tecmint/Screenshot from 2023-07-27 14-02-45.png
16K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libglass.so
28K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_pango.so
20K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font.so
64K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libprism_es2.so
512K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libglassgtk3.so
28K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea/libjavafx_font_freetype.so
672K 2022-10-01 12:41 /home/tecmint/.openjfx/cache/17.0.3-ea
676K 2022-10-01 12:41 /home/tecmint/.openjfx/cache
...
55G 2023-08-14 10:22 /home/tecmint
du command rất linh hoạt và có thể được tùy chỉnh theo nhu cầu của bạn bằng cách sử dụng các tùy chọn và cờ khác nhau. Sử dụng man du
trong cửa sổ terminal để biết thông tin chi tiết hơn về các tùy chọn và cách sử dụng của lệnh này.