İşte daha genel bir yaklaşım. Çıktısını alın du folderve du -h folderiki farklı dosyalarda.
du folder > file1
du -h folder > file2
Anahtar kısım şudur: uygun bir sınırlayıcı ile sırala file1ve file2satır satır.
paste -d '#' file1 file2 > file3
(varsayarak #görünmez file1ve file2)
Şimdi sırala file3. Bunun file1içeriğe göre sıralanacağını ve file2içeriklere göre kopacağını unutmayın. Aşağıdakileri kullanarak ilgili sonucu çıkarın cut:
sort -n -k1,7 file3 | cut -d '#' -f 2
Ayrıca man sortdiğer seçeneklere de göz atın .
Bunu daha sonra tekrar kullanmak için takma ad olarak da kaydedebilirsiniz. Bunu yapmak için aşağıdakilerin altına ekleyin ~/.bashrc:
sorted-du () {
paste -d '#' <( du "$1" ) <( du -h "$1" ) | sort -n -k1,7 | cut -d '#' -f 2
}
Ardından, yeni bir terminal oturumu açın ve yeni takma adınızı yürütün:
sorted-du /home