Để tìm 10 tệp lớn nhất (linux / bash):
find . -type f -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
Để tìm 10 thư mục lớn nhất:
find . -type d -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
Chỉ khác là có -type {d:f}
.
Xử lý các tệp có khoảng trắng trong tên và tạo kích thước tệp có thể đọc được ở đầu ra. Tập tin lớn nhất được liệt kê cuối cùng. Đối số theo đuôi là số lượng kết quả bạn thấy (ở đây là 10 kết quả lớn nhất).
Có hai kỹ thuật được sử dụng để xử lý khoảng trắng trong tên tệp. Sử find -print0 | xargs -0
dụng dấu phân cách null thay vì dấu cách và phần thứ hai xargs -I{}
sử dụng dòng mới thay vì dấu cách để chấm dứt các mục đầu vào.
thí dụ:
$ find . -type f -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
76M ./snapshots/projects/weekly.1/onthisday/onthisday.tar.gz
76M ./snapshots/projects/weekly.2/onthisday/onthisday.tar.gz
76M ./snapshots/projects/weekly.3/onthisday/onthisday.tar.gz
76M ./tmp/projects/onthisday/onthisday.tar.gz
114M ./Dropbox/snapshots/weekly.tgz
114M ./Dropbox/snapshots/daily.tgz
114M ./Dropbox/snapshots/monthly.tgz
117M ./Calibre Library/Robert Martin/cc.mobi
159M ./.local/share/Trash/files/funky chicken.mpg
346M ./Downloads/The Walking Dead S02E02 ... (dutch subs nl).avi