find命令的一般格式:
find pathname -options [-exec]
pathname 是find命令所查找的目录路径
-exec 对匹配的文件执行该参数所给出的shell命令
-options 选项参数:
-name 按照文件名查找文件
-perm 按照文件权限来查找文件
-user 按照文件属主来查找文件
-group 按照文件所属组来查找文件
-mtime -n +n 按照文件的更改时间来查找文件,-n 表示n天以内,+n 表示n天前
-nogroup 查找无属组的文件
-nouser 查找无属主的文件
-type 查找某一类型的文件:
b 块设备文件
d 目录
c 字符设备文件
p 管道文件
l 符号链接文件
f 普通文件
-iregex 忽略大小写的正则表达式
-regex 正则表达式
1、使用-name选项
例(1)在当前目录及子目录下查找所有“.log”文件
$find . -name “*.log”
(2)在当前目录及子目录下查找所有以大写字母开头的文件
$find . -name “[A-Z]*”
2、使用-perm选现
该选项用来查找那些指定权限的文件
例:查找当前目录及子目录下所有文件权限为755的文件
$find . -perm 755
3、使用-mtime选项
按照文件的修改时间来查找
例:(1)在当前目录下查找1天内修改过的文件
$find . -mtime -1
(2)在当前目录中查找1天前修改过的文件
$find . -mtime +1
4、使用exec来执行shell命令
格式要求:
-exec 选项后面跟随着所要执行的命令,然后是一对{}一个空格和一个/,最后是一个分号。
例:在用户主目录下查找修改时间在3天前的“.txt”文件并删除
$find . -mtime +3 -name “*.txt” -exec rm {} /;
5、使用正则表达式
$find . -iregex ".*/.txt"
当前位置查找后缀为.txt的文件