Linux查找文件命令find
Linux find命令用来在指定目录下查找文件
语法
find path [-option] [ -print] [-exec -ok command] {} \;
命令用法
path:查找文件的路径 当前目录及其子目录用.
表示
[-option]:可选参数 参数很多,这里只介绍一些常用的 具体的使用请使用 man find命令自己查看
-
-type b/d/c/p/l/f 常用的有 f 查找普通文件 d 查找目录
-
-name 按文件名查找
-
-iname 按文件名查找忽略大小写
-
-user 按用户来查找
-
-group 按用户组查找
-
-size 按文件大小查找 n[c]查长度为n块[或n字节]的文件 1块=512字节
-
-ctime -n +n 按创建时间(create time)查找 -n指n天以内,+n指n天以前
-
-atime -n +n 按访问时间(access time)查找 -n指n天以内,+n指n天以前
-
-mtime -n +n (modify time)查找 -n指n天以内,+n指n天以前
-cmin -amin -mmin 查找n分钟内(前)创建,访问,修改的文件及目录
-
-perm 按执行权限查找
-
-empty 查找空文件
-
-used -n +n 查找被使用过的文件 -n指n天以内,+n指n天以前
[-print]:find命令将匹配的文件输出到标准输出 默认值
[-exec]:find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } ;,注意{ }和\;之间的空格。
[-ok]:和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
实例
1.查找当前路径下的所有目录文件
find .
2.查找根目录下的目录文件
find /
3.查找根目录下的所有目录
find / -type d
4.查找根目录下名称为index.php的文件
find / -name index.php
5.查找/home目录下属于zhangsan的文件
find /home -user zhangsan -type -f
6.查找/home目录下的属于test用户组的文件
find /home -group test -type -f
7.查找/home目录下3天前创建的文件
find /home -ctime +3 -type -f
8.查找/home目录下3天内创建的文件
find /home -ctime -3 -type -f
9.列出/home文件或目录被改动过之后,在2日内被存取过的文件或目录
find /home -used -2
10.查找/home目录下站内存大于512k的文件
find /home -size +512k
11.在/home目录下查找权限为777,文件后缀为php的文件并执行 ls -al命令
find /home -perm 0777 -name "*.php" -exec ls -al {} \;
12.查找/home目录下的所有后缀为html的文件并询问是否删除
find /home -name "*.html" -ok rm {} \;