whereis
是搜索系统命令的命令,不能搜索普通文件,只能搜索系统命令
which
搜索系统命令的命令
ps:whereis命令与which命令的区别:
whereis命令可以在查找到二进制命令的同时,查找到帮助文档的位置。而which命令在查找到二进制命令的同时,如果这个命令有别名,则还可以找到别名命令
locate
可以按照文件名搜索普通文件的命令
find
1、按照文件名搜索
[root@localhost~]# find 搜索路径 [选项] 搜索内容
选项:
-name 按照文件名搜索
-iname 按照文件名搜索,不区分文件名大小写
-inum 按照inode号搜索
注:搜索abc找不到abcd
2、按照文件大小搜索
[root@localhost~]# find 搜索路径 [选项] 搜索内容
选项:
-size[+|-]大小 按照指定大小搜索文件
注:-size后的大小,若是k、M,注意区分大小写,若为字节,记得+c。如find -size 27c 因为默认b要*512字节,+c才不会
3、按照修改时间搜索
[root@localhost~]# find 搜索路径 [选项] 搜索内容
选项:
-atime [+|-]时间 按照文件访问时间搜索
-mtime [+|-]时间 按照文件数据修改时间搜索
-ctime [+|-]时间 按照文件状态修改时间搜索
注:单位时间为天
举例:
-5 代表5天内修改的文件
5 代表前5~6天那一天修改的文件
+5 代表6天前修改的文件
4、按照权限搜索
[root@localhost~]# find 搜索路径 [选项] 搜索内容
选项:
-perm 权限模式 查找文件权限刚好等于“权限模式”的文件
-perm -权限模式 查找文件权限全部包含“权限模式”的文件
-perm +权限模式 查找文件权限包含“权限模式”的任意一个权限的文件
示例:
+444 只有者、组、其他中有一个的身份权限比这个搜索的大,就能找到
-444 三个身份的权限都要包含这个权限
5、按照所有者和所属组搜索
[root@localhost~]# find 搜索路径 [选项] 搜索内容
选项:
-uid 用户ID 按照用户ID查找所有者是指定ID的文件
-gid 组ID 按照用户组ID查找所属组是指定ID的文件
-user 用户名 按照用户名查找所有者是指定用户的文件
-group组名 按照组名查找所属组是指定用户组的文件
-nouser 查找没有所有者的文件。可以用来查找垃圾文件
6、按照文件类型
[root@localhost~]# find 搜索路径 [选项] 搜索内容
选项:
-type d: 查找目录
-type f: 查找普通文件
-type l: 查找软链接文件
7、逻辑运算符
[root@localhost~]# find 搜索路径 [选项] 搜索内容
选项:
-a and逻辑与
-o or逻辑或
-not not逻辑非
8、其他选项
find 搜索路径 [选项] 搜索内容 -exec 命令2 {} \;
把find命令的结果交给由“-exec”调用的命令2来处理
区别:-exec命令2会直接处理而不询问,-ok的命令2在处理前会询问用户是否这样处理,在得到确认命令后,再执行
原文:https://www.cnblogs.com/Z1nGya/p/11636424.html