關於查找/刪除目錄中最舊的目錄/文件的stackoverflow有幾個不同的主題。我閱讀了很多,並且看到了很多不同的方式,這些方式對於其他系統中的某些人顯然有效,但在我的情況下不適用於我。通過Bash刪除除FreeBSD上最舊的目錄(no -printf,帶空格,無zsh)
約束條件是:
- 林在FreeBSD(FreeNAS的9.3)
- 目錄有空格的
- 不要使用ls(http://mywiki.wooledge.org/ParsingLs)
- 不能使用-printf發現的(犯規存在對我來說)
我得到的最接近的是這樣的東西(不完整):
find . -maxdepth 1 -d -name "Backup Set*" -print0 | xargs -0 stat -f "%m %N" | sort -r| awk 'NR>5'
這給了我,我想刪除但他們現在已經時間戳前綴的目錄,這我不知道,如果我去掉和管RM我會回來的情況下,我不能刪除目錄與他們的空間。
輸出:
1450241540 ./Backup Set1
1450241538 ./Backup Set0
感謝這裏的任何幫助。
,我看了相關的帖子:
https://superuser.com/questions/552600/how-can-i-find-the-oldest-file-in-a-directory-tree
Bash scripting: Deleting the oldest directory
Delete all but the most recent X files in bash
做了'統計輸出可以讓你輸入額外的dbl引號,例如'stat -f「%m \」%N \%「」'?好Q,祝你好運。 – shellter