我想在特定文件夹中删除所有文件(并且是子文件夹)。但是我想删除不超过x文件。
到现在为止,我一直使用find -f -delete /path/to/dir/*
tldr解释:
此文件夹是"缓存"拇指的文件夹,我希望它们再生,但不是全部,因为它代表〜30go的图像。
我也应该根据创建时间使用查找,但是其中大多数是由脚本创建的,然后在5个月内没有创建,而在1天,5Go。
find /dir -type f -ctime +365 | head -n 100 | xargs rm
只能匹配1岁以上的文件。这样,您可以保证不总是删除同一组文件。
这是您没有包含任何newline字符的文件名。
做正确的事将需要在创建时跟踪文件,但这可能为时已晚。
您应该尝试
find /dir -type f -iname '*jpg' -print | head -100 | xargs rm
这基本上仅搜索jpg
S,但您可以对其进行修改。它将删除前100个,但是您也可以在head -100
部分中更改它。
这只是一个错误的想法。当您删除前100个时,没有任何保证,再生的人不会成为下一个删除作业的第一个。