find 查找文件
一.简介
linux系统中,运用find来查找。 可以根据不同的条件精确定位某个文件的位置。
语法:find +路径 +选项 +条件 +动作
二、五个选项
1.根据名称查找
find -name
find -iname -i 不区分大小写
2.根据大小查找
find size:
find size +5M 查找大于5M的文件
find size -5M 查找小于5M的文件
find size =5M 查找等于5M的文件
3.根据类型查找
find -type:
find -type
f 查找文件
d 目录
l 软链接
b 块设备
c 字符设备
s 套接字(进程之间通讯)
4.根据时间查找
find mtime:
find +路径 mtime +7 查找7天之前的文件
find +路径 mtime -7 查找最近7天的文件
find +路径 mtime 7 查找第7天的文件
5.根据用户、组查找
find /home -user xxx 查找此目录下属主是xxx的文件
find /etc -group xxx 查找此目录下属组是xxx的文件
find /xxx -nouser 查找此目录下没有属主的文件
find /xxx -nogroup 查找此目录下没有属组的文件
三、动作
查找到一个文件之后,对此文件进行的操作。
-print:打印查找到的内容(不输入动作时默认此动作)
-ls: 以长格式的方式显示打印内容
-delete:删除查找到的文件(只能删除文件,不能删除目录)
-ok:后面跟自定义shell命令(会提示是否操作)写法:-ok {} \;
-exec:后面跟自定义shell命令(不交互提示,直接执行)写法:-exec {} \;
ok 与 exec 两种方式,是将后边的shell 一条条执行的,不适合进行批量操作。
四、find的逻辑运算符
-a 与 and
-o 或 or
-not或者! 非 not
将不同的几个查找条件(选项) 通过逻辑运算符结合起来应用。