linux命令专栏(五)之find

find命令可以在一个目录(及子目录)中搜索文件,也可以指定一些匹配条件,如按文件名、文件类型、用户甚至是时间戳查找文件。

用法:find [-H] [-L] [-P] [-D debugopts] [-Olevel] [path...] [expression]

find命令的常用选项

-print:find命令将匹配的文件输出到标准输出

-exec:find命令对匹配的文件执行该参数所给出的shell命令,相应命令的形式为‘command’{} \,注意{}和\;之间的空格

-ok:和-exec作用相同,不过会以一种更安全的方式执行参数给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。

示例:

#查找当前目录下所有gz文件并且执行ls命令

#find -name "*.gz" -exec ls {} \;

#查找当前目录下所有的gz文件并且执行rm命令,在删除的时候进行询问

#find -name "*.gz" -ok rm -rf {} \;

扫描二维码关注公众号,回复: 5321139 查看本文章

1、查找当前目录下

find -name "*.gz" 

2、从根目录下开始查找

find / -name "*.gz"

3、只查找当前目录下的一级目录中包含的,不包括二级目录下包含的文件

find . -name "*.gz" -maxdepth 1

4、find . -name "*.gz" -maxdepth 1 -print

显示效果同上

5、find . -name "*.gz" -exec ls -l {} \;

找到文件后缀为.gz的文件并用ls -l的命令展示出来

6、找出所有修改时间在当前文件之后的所有文件

find -newer win-utf

7、3天之内的文件

find -ctime -3

8、3天之前的文件

find -ctime +3

9、根据权限查找

find -perm 644 -maxdepth 1

10、查找文件

find -type -f

11、查找链接

find -type l

12、查找目录

find -type d

13、文件大小

find -size +512

14、用户

find -user root

15、组

find -group root

16、查找空文件或目录

find -empty

17、查找更新时间在某两个文件之间的所有文件

find . cnewer redis-4.0.11 -a -not -cnewer zookeeper.out

查找更新时间在redis-4.0.11 之后并且在zookeeper.out更新时间之前的所有文件

18、查找1天以前3天以内的所有文件

find . -mtime +1 -and -mtime -3

猜你喜欢

转载自blog.csdn.net/qq_35689573/article/details/84559692