在一個目錄中,我想選擇具有給定總大小的最大文件並將它們移動到不同的目錄。在列出要選擇的文件時,我們需要按名稱對它們進行排序。bash:用於選擇總大小限制的最大文件的1個襯墊
作爲一個例子,說清楚,讓我們說總大小是500MB,每個文件大小小於500MB。
使用案例1:
- a.bz2 200MB
- b.bz2 100MB
- c.bz2 300MB
d.bz2 400MB
移動a.bz2和b.bz2(total = 300MB)到目錄../selected(因爲選擇第三個文件會使總大小> 500MB)
用例2:
- a.bz2 200MB
- b.bz2 200MB
- c.bz2 100MB
d.bz2 400MB
移動。 bz2,b.bz2和c.bz2(總數= 500MB)到目錄../selected
我知道如何添加每個文件的大小,但像在C程序中打破循環需要我編寫腳本。 (|)相反,我用管道希望它在1個襯墊
他們是如何排序?文件的大小是否一直在增加?你是否想要適應最大數量的文件?這似乎有一半... – dawg