CentOS Linux学习笔记总结(八十六)-CentOS Linux系统的查找命令find
find命令是用于在指定目录下查找文件,并可以对查找到的文件进行指定的操作。它的查找是从指定目录开始,并向下递归搜索它的所有各个子目录,查到后标准输出,并对其进行指定操作。
find语法:
find [参数] [选项]
find path -option [ -print ] [ -exec -ok command ] {} \;
find 常用选项:
1、-name<匹配模式>:查找文件名符合给定的匹配模式的所有文件,匹配模式可以通配符"*"、"?"、"[]"。-iname忽略大小写
find -name image_bak#不指定目录为当前所在目录
find -name 'image*'
find -name 'image????'
2、-amin<分钟>:查找在指定时间(分钟数)被访问过的所有文件
find -type f -amin +20 -name "t*"#+20意思是20分钟前被访问的文件
find -type f -amin -20 -name "t*"#-20意思是20分钟内被访问的文件
find -type f -amin 20 -name "t*"#正好是20分钟被访问的文件
3、atime<24小时数,或天数>:查找在指定天数被访问过的文件
find -type f -atime 13
find -type f -atime -13
find -type f -atime +13
4、-cmin<分钟>:查找在指定时间之时被更改过文件状态的文件或目录
find -type f -cmin 45
find -type f -cmin +45
find -type f -cmin -45
5、-ctime<24小时数即天数>:查找在指定时间之时被更改文件状态的文件或目录,单位以24小时计算
实例(略)
6、-mmin<分钟数>:查找指定分钟数被修改过文件内容的文件
7、-mtime<天数>:查找指定天数被修改过内容的文件
8、-type<类型>:查找类型:f普通文件;b块设备文件;c字符设备文件;d目录文件;p命令管道;l符号链接文件;s socket文件;
9、-size<文件大小>:查找指定文件大小的文件,默认单位为块。单位:b块(512字节);c字节;w字(2字节);k千字节;M兆字节;G;+为大小指定大小;-小于指定大小;
10、-gid<组ID> -uid<用户ID> -group<组名> -user<用户名>:查找指定组ID、用户ID,组名、用户名的文件
11、-empty:朝招大小为0的目录或文件
12、-exec指令名称 {} \;:对符合查询条件的文件执行所指定的命令,{}表示将find查到的内容作为指令的参数,最后必须固定字符"\;"
find -type f -name "test*" -exec ls -l {} \;
find -type f -name "test*" -exec rm {} \;
13、加否定参数:
find /root ! -name "*.txt"
14、通过xargs过滤
查找当前目录中内容包含"test888"文件
find . -type f -name "*"|xargs grep "test888"
15、统计查找到的文件行数