文件查找
文件查找
1. which
命令
用于查找可执行文件的位置,它会在环境变量PATH
指定的路径中搜索。
1
which [命令名称]
例如:
1
which ls
2. whereis
命令
用于查找二进制文件、源代码和手册页的位置。
1
whereis [文件名]
例如:
1
whereis vim
3. locate
命令
通过搜索一个更新过的数据库来查找文件。这个数据库通常通过updatedb
命令来更新。
1
locate [文件名]
例如:
1
locate hosts
更新locate
数据库:
1
updatedb
4. find
命令
是一个功能强大的工具,可以根据各种条件来查找文件,包括文件名、大小、类型、权限、所有者、组、日期等。
1
find [路径] [选项] [表达式] [动作]
- 按文件名查找:
1 2 3
find /etc -name "hosts" find /etc -iname "hosts" # 忽略大小写 find /etc -iname "hos*" # 使用通配符
- 按文件大小查找:
1 2 3
find /etc -size +5M # 大于5M的文件 find /etc -size 5M # 等于5M的文件 find /etc -size -5M # 小于5M的文件
- 指定查找的目录深度:
1
find / -maxdepth 4 -a -name "readmeifcfg*"
- 按文件属主、属组查找:
1 2
find /home -user jack # 属主是jack的文件 find /home -group hr # 属组是hr组的文件
- 按文件类型查找:
1 2
find /tmp -type f # 普通文件 find /dev -type b # 块设备文件
- 按文件权限查找:
1
find . -perm 644 -ls # 精确权限
- 找到后的处理动作:
1 2 3 4
find . -perm 715 -print # 打印文件名 find . -perm 715 -ls # 打印文件属性 find /etc -name "775*" -delete # 删除文件 find /etc -name "hosts*" -ok cp -rvf {} /tmp \; # 复制文件
本文由作者按照
CC BY 4.0
进行授权