Linux下如何一条命令删除上万个文件?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下如何一条命令删除上万个文件?相关的知识,希望对你有一定的参考价值。
参考技术Afind / -name *.log | xargs -n 1000 rm -f
因为rm 接收参数的数量是有限的, 所以每次传 1000个参数给他,这样可以满足你的需求。
补充一点,这种写法其实不是特别严谨,因为如果日志文件的命名有特殊字符的话,上面命令将会对特殊字符文件识别不了。
严谨的写法。
find / -name '*.log' -print0 |xargs -0 -n 1000 rm -f
这里前面的print0 和 后的-0 都是对特殊字符进行处理,也就是说他会认识如"aa bb cc " 这种文件名,多的不说了,不知你能否看明白。
Linux find命令根据时间筛选出文件进行删除
需求:删除 /home/file/ 目录下10天之前生成的txt类型的文件
find /home/file/ -ctime +10 -name "*.txt" -print | xargs rm -f
或者
find /home/file/ -ctime +10 -name "*.txt" -delete
经过测试在文件比较多的情况下 第二条命令比第一条速度更快。
//时间条件
-amin n: 查找n分钟以前被访问过的所有文件。
-atime n: 查找n天以前被访问过的所有文件。
-cmin n: 查找n分钟以前文件状态被修改过的所有文件。
-ctime n: 查找n天以前文件状态被修改过的所有文件。
-mmin n: 查找n分钟以前文件内容被修改过的所有文件。
-mtime n: 查找n天以前文件内容被修改过的所有文件。
以上是关于Linux下如何一条命令删除上万个文件?的主要内容,如果未能解决你的问题,请参考以下文章
linux命令下,删除历史命令,例如history -c。最后查记录会有history -c这条命令,该如何删除最后一条命令
linux命令下,删除历史命令,例如history -c。最后查记录会有history -c这条命令,该如何删除最后一条命令