世界上并没有完美的程序,但我们并不因此而沮丧,因为写程序本来就是一个不断追求完美的过程。 ——摘自周志明

find命令

1、find顾名思义查找,但是linux还可以找到目标后继续一些操作,例如删除。

  find path -option [-print]  [-exec   -ok  command] {} \

  解释:

  path  搜索路径

  -oprint  标准输出所匹配的文件

  -exec  执行后面的命令

  -ok  执行带提示,例如删除时,会提示你。

  command {} \  注意{}和\之间有空格。

2、看几个例子

  1)查根目录下,文件名.tar结尾的文件,然后进行删除

    find /  -type f  -name *.tar -exec rm -rf {} \

  2)根据时间删除,例如删除目录里7天前文件

    find / -type f -mtime +6 |xargs rm -rf {} \

    解释 +0 代表24小时之前

         0  代表24~48小时之间

                -0 代表24小时之内

    xargs代替exec,原因就是exec会一次性接受find匹配到所有的结果,会溢出,报错:参数列溢出;而xargs的思想是分步加载,每次只处理一部分,然后在加载一部分。

  遇到的坑:(1)卡时间时,有系统0开始,有的是1,这个需要根据实际情况测

       (2)按时间删除几天前的目录,如果当前的空目录,时间上也是合适的,则也会删除

参考:https://blog.csdn.net/dearbaba_8520/article/details/80534516

 

posted @ 2019-09-05 22:17  白杯与咖啡  阅读(329)  评论(0编辑  收藏  举报