安全基础知识

linux查找搜索命令(find)[重点]

 

 在前面的博文中介绍了locate,whereis,locate的简单应用,在这篇中我将重点介绍一下find的应用,作为一个sa如果不会用find 你会感到你的工作是多么的无力乏味,天空也为之暗淡–哈哈有点夸张了–BEGIN:

说明蓝色=命令名称

      浅绿=命令参数

      浅蓝=选项

      紫色=目录

      系统环境:CentOS  6.2  i686

 

-name filename #查找名为filename的文件
-perm #按执行权限来查找
-user username #按文件属主来查找
-group groupname #按组来查找
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n #按文件访问时间来查找文件,-n指n天以内,+n指n天以前 
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前 
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2 找文件,-n指n天以内,+n指n天以前 
-type
     查找某一类型的文件,诸如:
     b – 块设备文件。
     d – 目录。
     c – 字符设备文件。
     p – 管道文件。
     l – 符号链接文件。
     f – 普通文件。

-size n[c] #查长度为n块[或n字节]的文件
-depth #使查找在进入子目录前先行查找完本目录
-fstype #查更改时间比f1新但比f2旧的文件
-mount #查文件时不跨越文件系统mount点
-follow #如果遇到符号链接文件,就跟踪链接所指的文件
-cpio #对匹配的文件使用cpio命令,将他们备份到磁带设备中
-prune #忽略某个目录

常用参数:

-print 将查找到的文件输出到标准输出
-exec command {} \; —–将查到的文件执行command操作,{} 和 \;之间有空格
ok -exec相同,只不过在操作前要询用户(rm -rf 等危险命令时最好用ok)

实例:

1、查找 /etc 下以 .local 结尾的文件:find /etc -name “*.local” -print

 

2、查找 /tmp 下包含 te 的所有目录:find /tmp -type d -name “te*”

3、查找 /tmp 下权限为777的文件或目录:find /tmp -perm 777

4、查找 /tmp 下所有文件长度为0的普通文件:find /tmp -size 0 -type f

5、查找 /tmp 下一天前更改的文件:find /tmp -mtime +1

6、查找 /tmp 下用户名为mysql的文件:find /tmp -user mysql

7、find-exec的应用,查找 /tmp 名字包te大小为0的文件并删除:find /tmp -name “*te*” -size 0 -exec rm -rf {} \;

补充:此文中只介绍了find的简单应用,find的不同选项参数配合使用,会大大提高你的工作效率。find不会只局限于本文中的这点应用,充分发挥你的智商,多用多练,你一定会“爱”上他它。

《linux查找搜索命令》 系列到此结束,欢迎大家指出文章中的漏洞和不足。

                                                                                                         by:秦汉唐宋元

                                                                                                  qq交流群:31013074

命令:find

语法:locate  [ 目录]  选项 参数

常用选项:

全国客服电话: 400-001-7880
值班技术:
13330159245

                       

扫一扫,咨询客服