- 搜索命令(whereis,which,locate,find)
-
whereis
- 搜索系统命令的命令,它不能搜索普通文件,只能搜索系统命令,可以查找二进制命令,源文件和帮助文档
-
which
- 搜索系统命令的命令,可以查找二进制命令,也可以查找帮助文档的位置,可以查找别名命令
-
locate
- 可以按照文件名搜索普通文件,需要使用updatedb命令强制更新数据库。只能按照文件名来搜索文件。
- find可以在目录中搜索文件
-
find命令
-
1.按照文件名搜索
- find 搜索路径 [选项] 搜索内容
- 选项:
- -name:按照文件名搜索
- -iname:按照文件名搜索,不区分大小写
- -inum:按照inode号搜索
-
2.按照文件大小搜索
- find 搜索路径 [选项] 搜索内容
- 选项:
- -size [+1-]大小:按照指定大小搜索文件
- 如果单位为b或不写单位,默认按照512 Byte搜索
-
3.按照修改时间搜索
-
- find 搜索路径 [选项] 搜索内容
- 选项:
- -atime [+1-]时间:按照文件访问时间搜索
- -mtime [+1-]时间:按照文件数据修改时间搜索
- -ctime [+1-]时间:按照文件状态修改时间搜索
- 访问时间atime,数据修改时间(mtime),状态修改时间(ctime)
- -5:代表5天内修改的文件,5代表前5~6天修改的文件,+5代表6天前修改的文件
-
4.按照权限搜索
- find 搜索路径 [选项] 搜索内容
- 选项
- -perm 权限模式:查找文件权限刚好等于“权限模式”的文件
- -perm -权限模式:查找文件权限全部包含“权限模式”的文件
- -perm +权限模式:查找文件权限包含“权限模式”的任意一个权限的文件
-
5.按照所有者和所属组搜索
- find 搜索路径 [选项] 搜索内容
- 选项:
- -uid 用户ID:按照用户ID查找所有者是指定ID的文件
- -gid 组ID:按照用户组ID查找所属组是指定ID的文件
- -user 用户名:按照用户名查找所有者是指定用户的文件
- -group 组名:按照组名查找所属组是指定用户组的文件
- -nouser:查找没有所有者的文件
- “-nouser”可以查找垃圾文件和外来文件
-
6.按照文件类型搜索
- find 搜索路径 [选项] 搜索内容
- 选项:
- -type d:查找目录
- -type f:查找普通文件
- -type l:查找软链接文件
-
7.逻辑运算符
- find 搜索路径 [选项] 搜索内容
- 选项:
- -a:and逻辑与
- -o:or逻辑或
- -not:not逻辑非
-
1)-a:and逻辑与
- -a代表逻辑与运算,两个条件都符合,find搜索的结果才成立
- 在当前目录下搜索大于2KB,并且文件类型是普通文件的文件
-
2)-o:or逻辑或
- -o代表逻辑或运算,两个条件符合其中一个就可以
- 在当前目录下搜索文件名是abc或者abcd的文件
-
3)-not:not逻辑非
- -not代表逻辑非运算,也就是取反。“!”这个也可以取反
- 在当前目录下搜索文件名不是abc的文件
-
8.其他选项
-
1)-exec选项
- find 搜索路径 [选项] 搜索内容 -exec 命令2 { } \;
- 把find命令的结果交给命令2来处理,{ }就是代表find命令的查找结果
-
2)ok选项
- find 搜索路径 [选项] 搜索内容 -ok 命令2 { } \;
- “-ok”命令2在处理前会先询问用户是否这样处理,在得到确认命令后,才会执行
Linux搜索命令(find命令的详解)
最新推荐文章于 2025-05-03 08:58:35 发布