Linux下find(文件查找)命令使用实例总结

原文地址为:Linux下find(文件查找)命令使用实例总结

find在不指定查找目录的情况下是对整个系统进行遍历查找

使用格式 find  [-path……]        -options    [-print -exec -ok] 

翻译成中文就是 find  [指定查找目录]  [查找规则]  [查找完后执行的action]

path:要查找的目录路径。 
      ~ 表示$HOME目录
       . 表示当前目录
       / 表示根目录 

print:表示将结果输出到标准输出。 

exec:对匹配的文件执行该参数所给出的shell命令。 
      形式为command {} \;,注意{}与\;之间有空格 

ok:与exec作用相同,
      区别在于,在执行命令之前,都会给出提示,让用户确认是否执行 

options常用的有下选项: 
      -name:按照名字查找 
      -perm:安装权限查找 
      -prune:不再当前指定的目录下查找 
      -user:文件属主来查找 
      -group:文件所属组来查找 
      -nogroup:查找无有效所属组的文件 
      -nouser:查找无有效属主的文件 
      -type:按照文件类型查找 

介绍下文件名通配的知识

*表示  通配任意的字符

?表示  通配任意的单个字符

[ ] 表示 通配括号里面的任意一个字符

通配符使用举例:

Linux下find(文件查找)命令使用实例总结


下面将会用这些find命令用法一一举例:

1、按名字查找

 #  -name       //根据文件名查找(精确查找)
 #  -iname       //根据文件名查找,但是不区分大小写 

在当前目录及子目录中,查找小写字母开头的txt文件

Linux下find(文件查找)命令使用实例总结

在/home及其子目录中,查找小写字母开头的txt文件

Linux下find(文件查找)命令使用实例总结

在$HOME目录及其子目录中,查找所有文件

Linux下find(文件查找)命令使用实例总结

在当前目录及子目录中,查找不是th开头的txt文件

Linux下find(文件查找)命令使用实例总结

2、按目录查找

在当前目录除code之外的子目录内搜索 txt文件 

Linux下find(文件查找)命令使用实例总结

在当前目录及除code和codetest之外的子目录中查找txt文件

Linux下find(文件查找)命令使用实例总结

在当前目录,不再子目录中,查找txt文件 

Linux下find(文件查找)命令使用实例总结

3、按权限查找

在当前目录及子目录中,查找属主具有读写执行,其他具有读执行权限的文件

Linux下find(文件查找)命令使用实例总结

4、按类型查找

在当前目录及子目录下,查找符号链接文件 

Linux下find(文件查找)命令使用实例总结

5、按属主及属组

查找属主是admin的文件

Linux下find(文件查找)命令使用实例总结 

查找属主被删除的文件 

Linux下find(文件查找)命令使用实例总结

查找属组mysql的文件

Linux下find(文件查找)命令使用实例总结

查找用户组被删掉的文件 

Linux下find(文件查找)命令使用实例总结

6、按时间查找

查找1天内被更改过的文件

Linux下find(文件查找)命令使用实例总结

查找1天前被更改过的文件

Linux下find(文件查找)命令使用实例总结

 查找一天内被访问的文件

Linux下find(文件查找)命令使用实例总结

 查找一天前被访问的文件

Linux下find(文件查找)命令使用实例总结

查找一天内状态被改变的文件 

Linux下find(文件查找)命令使用实例总结

查找一天内状态被改变的文件

find . -ctime +1 -type f -print 

查找10分钟以前状态被改变的文件

find . -cmin +10 -type f -print

7、按文件新旧

查找比aa.txt新的文件

find . -newer "aa.txt" -type f -print 

查找比aa.txt旧的文件

find . ! -newer "aa.txt" -type f -print

 查找比aa.txt新,比bb.txt旧的文件 

find . -newer 'aa.txt' ! -newer 'bb.txt' -type f -print

8、按文件大小查找

查找超过1M的文件

find / -size +1M -type f -print 

查找等于6字节的文件

find . -size 6c -print 

查找小于32k的文件

find . -size -32k -print

9、执行命令

查找del.txt并删除,删除前提示确认

find . -name 'del.txt' -ok rm {} \;

查找aa.txt 并备份为aa.txt.bak

find . -name 'aa.txt' -exec cp {} {}.bak \;


参考文章

http://blog.chinaunix.net/uid-20051192-id-3044634.html

http://blog.chinaunix.net/uid-24648486-id-2998767

     http://blog.****.net/love__coder/article/details/7028714

终于完了,太多了!!!

转载请注明本文地址:Linux下find(文件查找)命令使用实例总结

find在不指定查找目录的情况下是对整个系统进行遍历查找

使用格式 find  [-path……]        -options    [-print -exec -ok] 

翻译成中文就是 find  [指定查找目录]  [查找规则]  [查找完后执行的action]

path:要查找的目录路径。 
      ~ 表示$HOME目录
       . 表示当前目录
       / 表示根目录 

print:表示将结果输出到标准输出。 

exec:对匹配的文件执行该参数所给出的shell命令。 
      形式为command {} \;,注意{}与\;之间有空格 

ok:与exec作用相同,
      区别在于,在执行命令之前,都会给出提示,让用户确认是否执行 

options常用的有下选项: 
      -name:按照名字查找 
      -perm:安装权限查找 
      -prune:不再当前指定的目录下查找 
      -user:文件属主来查找 
      -group:文件所属组来查找 
      -nogroup:查找无有效所属组的文件 
      -nouser:查找无有效属主的文件 
      -type:按照文件类型查找 

介绍下文件名通配的知识

*表示  通配任意的字符

?表示  通配任意的单个字符

[ ] 表示 通配括号里面的任意一个字符

通配符使用举例:

Linux下find(文件查找)命令使用实例总结


下面将会用这些find命令用法一一举例:

1、按名字查找

 #  -name       //根据文件名查找(精确查找)
 #  -iname       //根据文件名查找,但是不区分大小写 

在当前目录及子目录中,查找小写字母开头的txt文件

Linux下find(文件查找)命令使用实例总结

在/home及其子目录中,查找小写字母开头的txt文件

Linux下find(文件查找)命令使用实例总结

在$HOME目录及其子目录中,查找所有文件

Linux下find(文件查找)命令使用实例总结

在当前目录及子目录中,查找不是th开头的txt文件

Linux下find(文件查找)命令使用实例总结

2、按目录查找

在当前目录除code之外的子目录内搜索 txt文件 

Linux下find(文件查找)命令使用实例总结

在当前目录及除code和codetest之外的子目录中查找txt文件

Linux下find(文件查找)命令使用实例总结

在当前目录,不再子目录中,查找txt文件 

Linux下find(文件查找)命令使用实例总结

3、按权限查找

在当前目录及子目录中,查找属主具有读写执行,其他具有读执行权限的文件

Linux下find(文件查找)命令使用实例总结

4、按类型查找

在当前目录及子目录下,查找符号链接文件 

Linux下find(文件查找)命令使用实例总结

5、按属主及属组

查找属主是admin的文件

Linux下find(文件查找)命令使用实例总结 

查找属主被删除的文件 

Linux下find(文件查找)命令使用实例总结

查找属组mysql的文件

Linux下find(文件查找)命令使用实例总结

查找用户组被删掉的文件 

Linux下find(文件查找)命令使用实例总结

6、按时间查找

查找1天内被更改过的文件

Linux下find(文件查找)命令使用实例总结

查找1天前被更改过的文件

Linux下find(文件查找)命令使用实例总结

 查找一天内被访问的文件

Linux下find(文件查找)命令使用实例总结

 查找一天前被访问的文件

Linux下find(文件查找)命令使用实例总结

查找一天内状态被改变的文件 

Linux下find(文件查找)命令使用实例总结

查找一天内状态被改变的文件

find . -ctime +1 -type f -print 

查找10分钟以前状态被改变的文件

find . -cmin +10 -type f -print

7、按文件新旧

查找比aa.txt新的文件

find . -newer "aa.txt" -type f -print 

查找比aa.txt旧的文件

find . ! -newer "aa.txt" -type f -print

 查找比aa.txt新,比bb.txt旧的文件 

find . -newer 'aa.txt' ! -newer 'bb.txt' -type f -print

8、按文件大小查找

查找超过1M的文件

find / -size +1M -type f -print 

查找等于6字节的文件

find . -size 6c -print 

查找小于32k的文件

find . -size -32k -print

9、执行命令

查找del.txt并删除,删除前提示确认

find . -name 'del.txt' -ok rm {} \;

查找aa.txt 并备份为aa.txt.bak

find . -name 'aa.txt' -exec cp {} {}.bak \;


参考文章

http://blog.chinaunix.net/uid-20051192-id-3044634.html

http://blog.chinaunix.net/uid-24648486-id-2998767

     http://blog.****.net/love__coder/article/details/7028714

终于完了,太多了!!!