Đây là một cách tiếp cận tổng quát hơn. Nhận đầu ra của du folder
và du -h folder
trong hai tập tin khác nhau.
du folder > file1
du -h folder > file2
Phần quan trọng là đây: nối file1
và file2
theo từng dòng, với một dấu phân cách phù hợp.
paste -d '#' file1 file2 > file3
(giả sử #
không xuất hiện trong file1
và file2
)
Bây giờ sắp xếp file3
. Lưu ý rằng điều này sẽ sắp xếp dựa trên file1
nội dung và phá vỡ mối quan hệ theo file2
nội dung. Trích xuất kết quả có liên quan bằng cách sử dụng cut
:
sort -n -k1,7 file3 | cut -d '#' -f 2
Ngoài ra hãy xem man sort
các lựa chọn khác.
Bạn cũng có thể lưu nó dưới dạng bí danh, để sử dụng lại sau. Để làm như vậy, thêm phần sau vào dưới cùng của ~/.bashrc
:
sorted-du () {
paste -d '#' <( du "$1" ) <( du -h "$1" ) | sort -n -k1,7 | cut -d '#' -f 2
}
Sau đó, mở một phiên cuối mới và thực hiện bí danh mới của bạn:
sorted-du /home