find :在指定的路径下查找指定文件…

1、功能说明
find命令用来在指定的路径下查找指定的文件。其格式如下:
find path-name [-options] [-print -exec -ok 命令 { } \ ;]
path-name:find命令查找的目录路径,例如可以用“.”表示当前目录,用“\”表示系统根目录。

-options:find命令的这个选项主要用来控制搜索的方式。下面列出“-options”选项常见的几个格式:
-name ‘字串’:查找文件名匹配所给字串的所有文件,字串内可用通配符*、?、[]
-lname ‘字串’:查找文件名匹配所给字串的所有符号链接文件,字串内可用通配符*、?、[]
-gid n:查找属于ID号为n的用户组的所有文件
-uid n:查找属于ID号为n的用户的所有文件
-empty:查找大小为0的文件或目录
-path ‘字串’:查找路劲发名匹配所给字串的所有文件,字串内可用通配符*、?、[]
-group ‘字串’:查找属于用户组名为所给字串的所有文件
-depth:在查找文件时,首先查找当前目录下的文件,然后在查找其子目录下的文件
-prune 目录:指出搜索时不搜索该目录。如果同时使用-depth选项,那么-prune选项将被find命令忽略
-size n:查找文件长度为n块的文件,带有c时表示文件长度以字节计
-user ‘字串’:查找属于用户名为所给字串的所有的文件
-mtime  +n或-n:按时间搜索,+n表示n天之前的,-n表示今天到n天前之间的
-type 文件类型:按指定文件类型搜索。文件类型包括b(块设备文件)、c(字符设备文件)、f(普通文件)、l(符号链接)、d(目录)、p(管道)、s(socket文件)

-print:搜索结果输出到标准输出。
-exec:对搜索出符合条件的文件执行所给出的Linux命令,而不询问用户是否需要执行该命令。{ }表示shell命令的选项即为所查找到的文件。命令的末尾必须以“;”结束。【注意:“-exec 命令 {}  \;”,在 } 和 \ 之间有空格隔开】
-ok:对搜索出符合条件的文件执行所给出的Linux命令。与-exec不同的是,它会询问用户是否需要执行该命令。

2、举例
(1)在系统根目录下,查找文件为普通文件,属于student用户的,2天以前的,并且查找时不包含/usr/bin目录的文件名为main.c的文件,并将结果输出到屏幕:
find / -path "/usr/bin" -prune -o -name "main.c" -user student -type f -mtime +2 -print
(2)对上例中搜索的结果进行删除操作:
find / -path "/usr/bin" -prune -o -name "main.c" -user student -type f -mtime +2 -print -exec rm {} \;
(3)查找系统中所有大小为0的普通文件,并列出它们的完整路径:
find / -type f -size 0 -exec ls -al {} \;
(4)查找系统/var/logs目录中修改时间在7天以前的普通文件,然后以交互方式删除:
find /var/logs -type f -mtime +7 -ok rm {} \;
(5)在当前目录及子目录下查找所有“*.txt”的文件:
find . -name "*.txt" -print
(6)在用户自己的根目录下查找文件名以一个大写字母开头,紧接着是一个小写字母和两个数字,最后以“*.txt”结尾的文件:
find ~ -name "[A-Z] [a-z] [0-9] [0-9]*.txt"
(7)在/etc目录下查找文件属主为student用户的文件:
find /etc -user student -print

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值