Linux-find

语法

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

作用

Linux find命令用来在指定目录下查找文件。任何位于参数之前的字符串都将被视为欲查找的目录名。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。

参数

find 根据下列规则判断 path 和 expression,在命令列上第一个 – ( ) , ! 之前的部份为 path,之后的是 expression。如果 path 是空字串则使用目前路径,如果 expression 是空字串则使用 -print 为预设 expression。

  • -print
    将查找到的文件输出到标准输出
  • -exec   command   {} \;     
    将查到的文件执行command操作,{} 和 \;之间有空格
    【;】在bash环境下是有特殊意义的,故用”\”来转义
  • -ok
    和-exec相同,只不过在操作前要询用户


-name<filename>查找文件名为filename的文件;
-iname<filename>不区分大小写查找文件名为filename的文件;



-uid查找文件所属用户uid=n的所有文件
-gid查找文件所属组gid=n的所有文件
-user<username>查找文件所属用户为 username 的所有文件;
-group<gname>查找文件所属组为gname的所有文件;
-nouser查找文件的拥有者不在/etc/passwd中;
-nogroup查找文件的用户组不在/etc/group中;



-type根据类型查找
f文件
d目录
c字符设备文件
b块设备文件
i链接文件
p管道文件

小 
-size根据文件大小查询
-n小于大小为 n 的文件
+n大于大小为 n 的文件

-mtime
-atime
-ctime
根据时间(天)查询,以“-mtime”为例
n意义为在n天之前的【一天之内】修改过的文件
+n列出在n天之前(不含n天本身)被修改过的文件
-n列出在n天之内(含n天本身)被修改过的文件
-mmin根据时间(分钟)查询
-nn 分钟以内修改过的文件
+nn 分钟之前修改过的文件
目录
层级
-mindepth<n>从第 n 级目录开始搜索
-maxdepth<n>表示至多搜索到第 n-1 级子目录。
权限-perm根据权限查找文件,默认为mode模式
mode查找文件权限刚好等于mode的文件
-mode查找文件权限必须要全部囊括mode的权限
+mode查找文件权限包含任一mode的权限
路径-path<p>路径名称符合 p 的文件,注意p用引号引起来
-ipath<p>忽略路径名大小写符合p的文件
-prune通常和 -path 一起使用,用于将特定目录排除在搜索条件之外。过滤条件写在其他条件前面。
新旧-newer<file>查找当前目录下比 a 文件要新的文件。
逻辑
-a
-o
-not | !

使用实例

根据目录名搜索

默认情况下只搜索文件名,而不搜索目录。

[root@Ethan Ethan]# find b.d
find: ‘b.d’: No such file or directory

寻找名为”b.d”的目录

[root@Ethan Ethan]# tree
.
├── a.d
│   ├── b1.d
│   ├── b2.d
│   ├── b3.d
│   └── b.d
│       └── c.d
├── admin
│   ├── a-b.txt -> a.txt
│   ├── a-l.txt
│   ├── a-s-b.txt
│   ├── a-s.txt -> a.txt
│   ├── a.txt
│   └── b.d
│       └── a.txt
├── a.out
├── a.txt
└── hello.c

8 directories, 9 files
[root@Ethan Ethan]# find . -path "*/b.d"
./admin/b.d
./a.d/b.d

对搜索结果进行处理

[root@Ethan Ethan]# find . -path "*/b.d" -exec ls -ld {} \;
drwxr-xr-x 2 root root 4096 Feb 27 10:41 ./admin/b.d
drwxr-xr-x 3 root root 4096 Feb 28 14:19 ./a.d/b.d

参考资料

https://www.cnblogs.com/shenqidu/p/10615593.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值