locate
格式
命令 | 参数 | 说明 |
|
| 本机查找文件 |
特点
- 数据库存储
crontab
任务扫描文件,更新到数据库,在数据库中进行查找。
- 周期
具体周期和时间看
crontab
任务
- 更新
updatedb
手动更新。
- 模糊匹配
模糊匹配查找结果,文件名包含或者路径包含也会被返回。
优劣
- 优势
不扫描磁盘,直接查库,效率高,速度快,资源消耗小。
- 缺点
- 依赖数据库更新,不更新时,新增文件找不到,删除文件还找到
- 模糊匹配,文件名或路径包含也会返回,冗余垃圾信息。
find
格式
命令 | 文件夹 | 选项 | 文件名 |
|
|
|
|
特点
- 实时扫描
执行命令当场扫描,结果实时,找到必然存在。
- 精确匹配
精确条件匹配,过滤冗杂信息,命中率高。
优劣
- 优势
- 查找条件丰富
-name filename
:文件名精确查找-iname filename
:忽略大小写查找-regex pattern
:正则查找-user username
:属主查找-group groupname
:数组查找-uid uid
:uid
查找-gid gid
:gid
查找-nouser
:无主文件-nogroup
:无组文件-type
:文件类型查找
f
d
c
b
l
p
s
-size
:文件大小查找
- 范围:
+
,-
,大于或小于,默认等于- 单位:
k
,M
,G
,可指定单位
- 条件组合:支持多条件限制
-a
:and
-o
:or
-not
:not
- 时间戳限制:根据时间进行查找
- 时间类型
mtime
:modify,修改时间ctime
:change,改变时间atime
,access,访问时间
- 常用时间
mmin
:mtime
以分钟为单位cmin
:ctime
以分钟为单位amin
:amin
以分钟为单位
- 时间限制:
+
,-
,默认等于,以指定时间为界,+
表示范围外,-
为范围内
-perm
:权限查找,permission
mode
:755
,权限精确匹配,必须相等-mode
:-755
,权限包含匹配,即最低权限/mode
:/755
,任意权限匹配,权限或|
,满足其一权限即可+mode
:+755
,同/mode
- 动作
-ls
:按照ls -lhi
格式显示-ok command {}\;
:执行command
命令,{}
为结果引用,\;
分号结束,需转义-exec command {}\;
:同-ok
命令查找
命令 | 功能 | 说明 |
| 查找命令位置 | 查找命令,满足条件即返回 |
| 查找命令位置 | 探知运行命令 |
whereis
查找的是命令文件
,自动过滤了其他类型,但是能够发现多个位置的命令地址。
which
更像是命令探知,在所有的命令当中探知执行的是哪一个命令
。
命令文件
加上alias
,which
会直接显示运行的是哪一个
命令。如果想知道
命令文件
都在哪,用whereis
。如果想知道运行的是
啥命令
,用which
,即使是alias
也能够发现。
脚本
- 五分钟内被修改的文件
find . -mmin -5
- 用户文件
find . -user godme
- 撤销其他用户执行权限
find . -perm -001 -exec chmod o-x {} \;
选项和参数之间注意分隔,一个空格就好了。
{}
左右留空。
\;
不要和语句连接上。
- 查看
godme
命令
alias godme="/bin/ls --color -lhi"
which godme #能够定位到执行的具体信息
whereis godme #找不到godme命令