shell中find详解

先来看看官方介绍

 

  
  
  
  
  1. 功能说明:查找文件或目录。 
  2.  
  3. 语  法:find [目录...][-amin <分钟>][-anewer <参考文件或目录>][-atime <24小时数>][-cmin <分钟>][-cnewer <参考文件或目录>][-ctime <24小时数>][-daystart][-depyh][-empty][-exec <执行指令>][-false][-fls <列表文件>][-follow][-fprint <列表文件>][-fprint0 <列表文件>][-fprintf <列表文件><输出格式>][-fstype <文件系统类型>][-gid <群组识别码>][-group <群组名称>][-help][-ilname <范本样式>][-iname <范本样式>][-inum <inode编号>][-ipath <范本样式>][-iregex <范本样式>][-links <连接数目>][-lname <范本样式>][-ls][-maxdepth <目录层级>][-mindepth <目录层级>][-mmin <分钟>][-mount]  
  4. [-mtime <24小时数>][-name <范本样式>][-newer <参考文件或目录>][-nogroup][noleaf] [-nouser][-ok <执行指令>][-path <范本样式>][-perm <权限数值>][-print][-print0][-printf <输出格式>][-prune][-regex <范本样式>][-size <文件大小>][-true][-type <文件类型>][-uid <用户识别码>][-used <日数>][-user <拥有者名称>][-version][-xdev][-xtype <文件类型>
  5.  
  6. 补充说明:find指令用于查找符合条件的文件。任何位于参数之前的字符串都将被视为欲查找的目录。 
  7.  
  8. 参  数: 
  9.  -amin<分钟>  查找在指定时间曾被存取过的文件或目录,单位以分钟计算。  
  10.  -anewer<参考文件或目录>  查找其存取时间较指定文件或目录的存取时间更接近现在的文件或目录。  
  11.  -atime<24小时数>  查找在指定时间曾被存取过的文件或目录,单位以24小时计算。  
  12.  -cmin<分钟>  查找在指定时间之时被更改的文件或目录。  
  13.  -cnewer<参考文件或目录>  查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录。  
  14.  -ctime<24小时数>  查找在指定时间之时被更改的文件或目录,单位以24小时计算。  
  15.  -daystart  从本日开始计算时间。  
  16.  -depth  从指定目录下最深层的子目录开始查找。  
  17.  -expty  寻找文件大小为0 Byte的文件,或目录下没有任何子目录或文件的空目录。  
  18.  -exec<执行指令>  假设find指令的回传值为True,就执行该指令。  
  19.  -false  将find指令的回传值皆设为False。  
  20.  -fls<列表文件>  此参数的效果和指定"-ls"参数类似,但会把结果保存为指定的列表文件。  
  21.  -follow  排除符号连接。  
  22.  -fprint<列表文件>  此参数的效果和指定"-print"参数类似,但会把结果保存成指定的列表文件。  
  23.  -fprint0<列表文件>  此参数的效果和指定"-print0"参数类似,但会把结果保存成指定的列表文件。  
  24.  -fprintf<列表文件><输出格式>  此参数的效果和指定"-printf"参数类似,但会把结果保存成指定的列表文件。  
  25.  -fstype<文件系统类型>  只寻找该文件系统类型下的文件或目录。  
  26.  -gid<群组识别码>  查找符合指定之群组识别码的文件或目录。  
  27.  -group<群组名称>  查找符合指定之群组名称的文件或目录。  
  28.  -help或--help  在线帮助。  
  29.  -ilname<范本样式>  此参数的效果和指定"-lname"参数类似,但忽略字符大小写的差别。  
  30.  -iname<范本样式>  此参数的效果和指定"-name"参数类似,但忽略字符大小写的差别。  
  31.  -inum<inode编号>  查找符合指定的inode编号的文件或目录。  
  32.  -ipath<范本样式>  此参数的效果和指定"-ipath"参数类似,但忽略字符大小写的差别。  
  33.  -iregex<范本样式>  此参数的效果和指定"-regexe"参数类似,但忽略字符大小写的差别。  
  34.  -links<连接数目>  查找符合指定的硬连接数目的文件或目录。  
  35.  -iname<范本样式>  指定字符串作为寻找符号连接的范本样式。  
  36.  -ls  假设find指令的回传值为True,就将文件或目录名称列出到标准输出。  
  37.  -maxdepth<目录层级>  设置最大目录层级。  
  38.  -mindepth<目录层级>  设置最小目录层级。  
  39.  -mmin<分钟>  查找在指定时间曾被更改过的文件或目录,单位以分钟计算。  
  40.  -mount  此参数的效果和指定"-xdev"相同。  
  41.  -mtime<24小时数>  查找在指定时间曾被更改过的文件或目录,单位以24小时计算。  
  42.  -name<范本样式>  指定字符串作为寻找文件或目录的范本样式。  
  43.  -newer<参考文件或目录>  查找其更改时间较指定文件或目录的更改时间更接近现在的文件或目录。  
  44.  -nogroup  找出不属于本地主机群组识别码的文件或目录。  
  45.  -noleaf  不去考虑目录至少需拥有两个硬连接存在。  
  46.  -nouser  找出不属于本地主机用户识别码的文件或目录。  
  47.  -ok<执行指令>  此参数的效果和指定"-exec"参数类似,但在执行指令之前会先询问用户,若回答"y"或"Y",则放弃执行指令。  
  48.  -path<范本样式>  指定字符串作为寻找目录的范本样式。  
  49.  -perm<权限数值>  查找符合指定的权限数值的文件或目录。  
  50.  -print  假设find指令的回传值为True,就将文件或目录名称列出到标准输出。格式为每列一个名称,每个名称之前皆有"./"字符串。  
  51.  -print0  假设find指令的回传值为True,就将文件或目录名称列出到标准输出。格式为全部的名称皆在同一行。  
  52.  -printf<输出格式>  假设find指令的回传值为True,就将文件或目录名称列出到标准输出。格式可以自行指定。  
  53.  -prune  不寻找字符串作为寻找文件或目录的范本样式。  
  54.  -regex<范本样式>  指定字符串作为寻找文件或目录的范本样式。  
  55.  -size<文件大小>  查找符合指定的文件大小的文件。  
  56.  -true  将find指令的回传值皆设为True。  
  57.  -typ<文件类型>  只寻找符合指定的文件类型的文件。  
  58.  -uid<用户识别码>  查找符合指定的用户识别码的文件或目录。  
  59.  -used<日数>  查找文件或目录被更改之后在指定时间曾被存取过的文件或目录,单位以日计算。  
  60.  -user<拥有者名称>  查找符合指定的拥有者名称的文件或目录。  
  61.  -version或--version  显示版本信息。  
  62.  -xdev  将范围局限在先行的文件系统中。  
  63.  -xtype<文件类型>  此参数的效果和指定"-type"参数类似,差别在于它针对符号连接检查。  

来看看我的总结

 

 

 

 

1、没写路径默认表示当前路径,./表示当前路径

 

d指的是目录,而l指的是超链接

C表示字节数

find的删除命令:find . –name “test.txt” –exec rm {} \;

这句话的意思在当前目录中找到test.txt文件后删除,这个命令也以用来删除临时文件,用nohup命令放到后台运行nohup find / -name “*.tmp” –exec rm {} \;

 

 

本文出自 “博客即日起停止更新” 博客,谢绝转载!

你可能感兴趣的:(shell,职场,休闲)