我是新的shell腳本。你可以請建議我一些代碼以下要求?保留最近的3個文件夾並刪除其餘的bash腳本?
我有以下格式的文件夾
例如:/home/backup/store_id/datewisefolder/some.zip
,如:/home/backup/44/22032014/some_file.zip
/home/backup/44/23032014/some_file.zip
/home/backup/44/24032014/some_file.zip
/home/backup/44/25032014/some_file.zip
還有更多..
我想去每個商店的id文件夾&只保留最近3日期明智的文件夾休息的刪除。這裏44商店id文件夾23032014,24032014,25032014這三個都是最近的一個,所以保持原樣。 22032014年齡較大的刪除一個。
我寫了找出最近三個文件的shell代碼,但我不知道如何使用store_ID文件夾循環刪除休息。
下面的代碼找出最近的文件夾,日期明智
CD /家庭/備份/ 44/ LS -1 | sort -n -k1.8 -k1.4 -k 1 |尾-3
您可以刪除比n更早的文件,比如'find -mtime +3 -delete'刪除超過3天的文件。 –
我不想在時間的基礎上 – Rups
[刪除所有,但最新的X文件在bash中](http://stackoverflow.com/questions/25785/delete-all-but-the-most-recentx -biles-in-bash) – dogbane