12、文件查找locate、find
来源:互联网 发布:最新淘宝助理下载 编辑:程序博客网 时间:2024/06/10 01:13
locate命令:非实时查找,数据库查找(速度快)
依赖于事先构建的索引;索引在系统较为空闲时自动构建(周期性任务)
updatedb:构建最新的索引(超级耗资源)
locate 字符串:搜索所有路径中是否有字符串
find命令:文件系统上查找指定符合条件的文件(实时查找慢)
find [选项]... [查找路径] [查找条件] [处理动作]
查找路径:可指定多个路径,默认为当前目录
查找条件:指定以文件名、大小、类型、权限等条件查找,默认为所有文件
处理动作:对符合条件的文件做什么操作,默认输出到屏幕
查找条件:
根据文件名查找
-name "文件名":支持使用通配符
-iname "文件名":忽略大小写,支持使用通配符
-regex "PATTERN":以PATTERN匹配整个文件路径
根据文件属主、属组查找
-user 用户名:查找属主
-group 组名:查找属组
-uid UID:查找指定UID文件
-gid GID:查找指定GID文件
-nouser:查找没有属主的文件
-nogroup:查找没属组的文件
根据文件类型查找
-type f|d|l...:指定文件类型查找
根据文件大小查找
-size [+|-]大小
大小可为:#k,#M,#G
3k:查找大于2k小于等于3k的文件
-3k:查找小于等于2k的文件
+3k:查找大于3k的文件
根据时间戳查找
以天为单位
-atime [+|-]#
3:表示大于等于3天小于4天
+3:大于等于4
-3:小于3天
-mtime [+|-]#:
-ctime [+|-]#:
以分钟为单位
-amin [+|-]#:
-mmit [+|-]#:
-cmin [+|-]#:
根据权限查找
-perm [/|-]777
777:精确权限匹配
/777:属主、属组、其它中任意读、写、执行权限匹配就行
例:/700;属主有读或写或执行权限
-777:查找属主权限为7或属组为7或其它为7
组合条件
-a:与(可忽略)
-o:或(例:find /home -nouser -o -nogroup)
-not|!:非
如果有处理动作,组合后需要加括号,例:find /home \( -nouser -o -nogroup \) -ls
处理动作
-print:默认的处理动作,显示到屏幕
-ls:类似ll命令
-delete:删除查找到的文件
-fls /file:查到到所有文件的长格式信息保存到文件
-ok COMMAND {} \; :对查到的文件由COMMAND执行
每个文件执行之前,都会交互式要求用户确认
-exec COMMAND {} \; :对查找到文件执行COMMAND执行
{}:用于引用查找到的文件
例:find /tmp -cmin -5 -exec mv {} {}.new \;查找tmp下最近5分钟改变过文件并重命名
注意:find查到所有的文件,一次性传递给后面的命令,有些命令接受过多参数,可能会失败可使用
| xargs COMMAND:一个一个文件传递给COMMAND执行
依赖于事先构建的索引;索引在系统较为空闲时自动构建(周期性任务)
updatedb:构建最新的索引(超级耗资源)
locate 字符串:搜索所有路径中是否有字符串
find命令:文件系统上查找指定符合条件的文件(实时查找慢)
find [选项]... [查找路径] [查找条件] [处理动作]
查找路径:可指定多个路径,默认为当前目录
查找条件:指定以文件名、大小、类型、权限等条件查找,默认为所有文件
处理动作:对符合条件的文件做什么操作,默认输出到屏幕
查找条件:
根据文件名查找
-name "文件名":支持使用通配符
-iname "文件名":忽略大小写,支持使用通配符
-regex "PATTERN":以PATTERN匹配整个文件路径
根据文件属主、属组查找
-user 用户名:查找属主
-group 组名:查找属组
-uid UID:查找指定UID文件
-gid GID:查找指定GID文件
-nouser:查找没有属主的文件
-nogroup:查找没属组的文件
根据文件类型查找
-type f|d|l...:指定文件类型查找
根据文件大小查找
-size [+|-]大小
大小可为:#k,#M,#G
3k:查找大于2k小于等于3k的文件
-3k:查找小于等于2k的文件
+3k:查找大于3k的文件
根据时间戳查找
以天为单位
-atime [+|-]#
3:表示大于等于3天小于4天
+3:大于等于4
-3:小于3天
-mtime [+|-]#:
-ctime [+|-]#:
以分钟为单位
-amin [+|-]#:
-mmit [+|-]#:
-cmin [+|-]#:
根据权限查找
-perm [/|-]777
777:精确权限匹配
/777:属主、属组、其它中任意读、写、执行权限匹配就行
例:/700;属主有读或写或执行权限
-777:查找属主权限为7或属组为7或其它为7
组合条件
-a:与(可忽略)
-o:或(例:find /home -nouser -o -nogroup)
-not|!:非
如果有处理动作,组合后需要加括号,例:find /home \( -nouser -o -nogroup \) -ls
处理动作
-print:默认的处理动作,显示到屏幕
-ls:类似ll命令
-delete:删除查找到的文件
-fls /file:查到到所有文件的长格式信息保存到文件
-ok COMMAND {} \; :对查到的文件由COMMAND执行
每个文件执行之前,都会交互式要求用户确认
-exec COMMAND {} \; :对查找到文件执行COMMAND执行
{}:用于引用查找到的文件
例:find /tmp -cmin -5 -exec mv {} {}.new \;查找tmp下最近5分钟改变过文件并重命名
注意:find查到所有的文件,一次性传递给后面的命令,有些命令接受过多参数,可能会失败可使用
| xargs COMMAND:一个一个文件传递给COMMAND执行
阅读全文
0 0
- 12、文件查找locate、find
- 文件查找locate、find
- 查找文件之find locate
- linux 文件的查找 find which locate
- 文件查找命令find,locate,whereis,which
- 文件查找命令 whereis locate find
- 文件查找命令-which,whereis,locate,find
- 文件查找之locate与find
- linux常用命令-查找文件(find/locate)
- linux文件查找命令locate和find
- Linux文件查找利器 locate & find
- 一天一linux命令(12) which whereis locate find 查找文件和目录
- linux下查找文件命令:locate 和 find
- locate 和 find:两个查找文件的命令
- linux中Find、whereis、locate、which查找文件命令总结
- locate 和 find:两个查找文件的命令
- linux中Find、whereis、locate、which查找文件命令总结
- 查找文件命令---find, locate, whereis, which, type
- java蓝桥杯杨辉三角
- 在AR中制作一个重力感应标志
- vue 请求拦截,判断是否登录
- 信安实践
- 正则表达式
- 12、文件查找locate、find
- Java进阶(七)正确理解Thread Local的原理与适用场景
- lamp 独立环境安装
- 使用jmeter测试工具完成文件的上传
- 通过四种方法,在MATLAB中画一维光栅
- Appium测试app报错Permission to start activity denied.
- boost::bind的理解与使用
- 删除 添加 全选 批量删除
- java蓝桥试题学做菜