我的东西在哪?——find命令

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/ZENGZISUZI/article/details/80517088

语法

find [option] [patch] [expression]

选项

-name:直接根据文件名字来查找
-perm:根据文件权限来查找
-mtine -n(+n):根据文件的更改时间来查找,其中-n代表n天之内的文件,+n 代表n天之前的文件
-type:查找某一类型的文件,后带一些参数:
-d:目录
-p:管道文件
-f:普通文件
-i:符号链接文件

路径

指定任意一个绝对路径
.表示当前目录
/表示根目录

表示即输出

-print:标准输出,即屏幕
-exec:即find语句执行结果(0或非0)一般用于复合操作。

例子

  • 列出当前目录及子目录下所有文件和文件夹
find .
  • 在/work目录下查找以.iso结尾的文件
find /work -name "*.iso"
  • 找以.iso结尾的文件(忽略大小写)
find /work -iname "*.iso"
  • 找以.iso结尾和zip结尾的文件
find /work \( -name "*.iso" -o -name "*.zip" \)
  • 找不是以sh结尾的文件
find /work ! -name "*.sh"
  • 最近3天内被访问过的所有文件
find . -type f -atime -3
  • 大于10KB的文件
find . -type f -size +10k
  • 结合其他命令使用。找到test并删除此文 件,该命令一定要注意{}和\之间和空格,不要遗漏最后的“;”
    -ok则会给出提示,是否要删除
find -name  test.txt -exec rm -f test.txt {} \;
find -name  test.txt -ok rm -f test.txt {} \
  • 将30天前的.log文件移动到old目录中
find . -type f -mtime +30 -name "*.log" -exec cp {} old \;

猜你喜欢

转载自blog.csdn.net/ZENGZISUZI/article/details/80517088