- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
find总结
Find
1.大小
-szie n[cwkMG]
Size这个东西是这样,默认的单位是块,一个块是512字节。c是字节,k是1024字节,M是1024k,G是1024M,w是两个字节。
-size 1k :表示大于0,小于1024字节的所有文件。
-size -1k:只有空间为0的空文件才会出现了。
-size 3M:占用空间大于2M,小于等于3M的将会出现。
-size 1G:比1G小的非空文件多会出现。
-size 1M和-size 1024k区别很大:前者表示大于零,小于等于1M的文件,后者表示大于1023k,小于等于1024k的所有文件。精确度差很多。
+n或者-n,都是开区间,不包括那个n值的。
-empty:与-size 0 的区别在于,空目录不包含任何东西,所以size为零,但是目录如果不空,也可能size为零。如a/b,b是一个空目录,结果a、b的size都是零,但是a不是空目录,因为他下面有b。
2.时间
-atime :访问时间。可以是-atime 3,-atime -3或者-atime +3
单位是24小时。0,1,2对应的时间点如下:
| 3 | 2 | 1 | 0 |
| -- NOW
+、-都是表示开区间,不包含的。
要查看1天之内访问过的文件:
-atime 0
查看距离现在1*24小时--3*24小时之间访问过的文件:
-atime +0 -atime -4
N 对应 (N-1)*24小时 ~ N*24小时的区间
-mtime道理类似,m表示修改。-ctime也一样,c表示改变文件状态。
还有-amin,-cmin,-mmin,只是把单位换成分钟,精确度上来了。
另外还有-newer file,表示比file的修改时间更新。-anewer表示访问时间更新,-cnewer表示改变状态更新。注意:! newer a 时,a本身也会返回,因为他不比自己更新。
3.权限
-perm 755:精确匹配
-perm -644:为1的位,一定要用,为0的位,可有可不有。所以,三个位置,实际上,第一个位置大于等于6,第二个位置大于等于4,第三个位置大于等于4的都行。
小注意:ls似乎不接受管道,如果find . -print | ls -l,那么跟ls -l木有区别。因此只能用exec来做。
4.mount
-mount要加在目录名之后,expression的开头,然后接test和action。表示不跨越文件系统。
5. depth深度优先
跟mount一样,也是放在前面。不过似乎默认就是深度优先的。
6.-name 文件名。
支持*和?通配符。也支持[a-z]
7. -type
b c d l s f p
8.用户和组
-user chen
-group chen
-nouser
-nogroup
9.maxdepth和mindepth
-maxdepth 1 不深入子目录,只在当前目录
-maxdepth 2在子目录中找,但不在当前目录找
跟mount和depth一样,也要放前面
10.fstype
-fstype ddd 指定文件系统
11. 连接数
-links n
-links +n
-links -n
12. prune
prune是一种action
在find的expression中,分为option,test和action
Option如mount,depth,maxdepth和mindepth
Test如-name,-size
Action如prune,print
Option永远返回true,test和action可能true可能false
prune这个action的特点是:什么都不干,但是返回true
所以,如果不想要某一个部分,就 用 -conditon过滤,然后用-prune。如 -condition -prune -o -print。这样,符合-condition的就去执行prune,于是什么也不干,返回true,把后面的print短路了。不符合-condition的,就直接返回false,所以去执行了print。
如:去掉所有包含a的文件和目录:
忽略某一目录,不在那个目录中查找:
-path “./test5”:如果是./test5则返回true,否则返回false。
忽略多个目录:
实际上这个例子给出了与或非逻辑运算优先级的表示方法,就是用(),但是要用\来转义,而且括号跟中间的内容直接一定要用空格!
13. 与或非
-a
-o
!
支持短路
14.自动action
如果没有指定action
文档评论(0)