下linux下如何删除某目录下大于2M且修改时间是在今天之前的文件?
假设test下面有有几个文件夹,其中有一个是今天创建的其他都是昨天创建的·我在字符命令窗口怎么输入符合大于2M且时间在今天之前这个命令?...
假设test下面有有几个文件夹,其中有一个是今天创建的其他都是昨天创建的·我在 字符命令窗口 怎么输入 符合 大于2M 且时间在今天之前这个命令?
展开
2个回答
展开全部
find 搜索路径 -size +2M -cmin +$(((($(date +%H)*60))+$(date +%M))) -exec rm -f {} \;
例如:
从根目录起搜索:
find / -size +2M -cmin +$(((($(date +%H)*60))+$(date +%M))) -exec rm -f {} \;
搜索自己的home:
find ~ -size +2M -cmin +$(((($(date +%H)*60))+$(date +%M))) -exec rm -f {} \;
以上命令只能搜索大于2MB的单个文件,因为目录从本质上说也是一个文件,而就目录文件本身来说,其大小不可能达到几MB,所以rm命令我没加r这个递归删除参数.
如果要删除大于指定体积的目录,find可能做不到,你需要做个脚本,可能需要du测试目录大小
例如:
从根目录起搜索:
find / -size +2M -cmin +$(((($(date +%H)*60))+$(date +%M))) -exec rm -f {} \;
搜索自己的home:
find ~ -size +2M -cmin +$(((($(date +%H)*60))+$(date +%M))) -exec rm -f {} \;
以上命令只能搜索大于2MB的单个文件,因为目录从本质上说也是一个文件,而就目录文件本身来说,其大小不可能达到几MB,所以rm命令我没加r这个递归删除参数.
如果要删除大于指定体积的目录,find可能做不到,你需要做个脚本,可能需要du测试目录大小
来自:求助得到的回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |