#whereis [选项] [命令名]
功能:搜索命令所在路径及其帮助文档位置选项:-b 只获取命令位置; -m 只获取帮助文档位置
#which [命令名]
功能:搜索命令所在路径及别名
#locate [文件名]
功能:在后台数据库“/var/lib/mlocate”中,按照文件名搜索
注意:1、locate为包含匹配;
2、对应的后台数据库不是实时更新的,所以最近生成的文件无法搜索到;
3、#updatedb命令可以实时更新数据库
whereis which locate 这三个命令,遵循配置文件 /etc/updatedb.conf 指定的搜索规则:
#find [搜索范围] [搜索条件]
功能:在指定范围内,搜索符合指定条件的文件
选项: -name 按照文件名搜索(完全匹配);
-iname 按照文件名搜索(完全匹配),不区分大小写;
-user 按照文件所有者搜索;
-nouser 搜索没有所有者的文件
#find /var/log/ -mtime +10 搜索log目录下10天前最后修改内容的文件
#find /var/log/ -ctime -10 搜索log目录下10天内最后改变属性的文件
#find /var/log/ -atime 10 搜索log目录下10天当天最后发生访问的文件
#find /var/log/ -size 25k 搜索log目录下文件大小等于25k的文件
#find /var/log/ -size +25M 搜索log目录下文件大小大于25M的文件
#find /var/log/ -size -25k 搜索log目录下文件大小小于25k的文件 ----k小写,M大写,默认单位为数据块(512字节)
#find . -inum 262422 搜索当前目录下 i节点 是 262422 的文件
#find /var/log/ \( -size +5k -a -size -100k \)
搜索log目录下文件大小大于5k小于100k的文件
#find /var/log/ \( -name "*.log" -a \( -mtime -1 -o -mtime +5 \) \) ---- -a "and" ; -o "or"
搜索log目录下文件名以".log"结尾,且最后修改时间不在1至5天范围内的文件
#find .. -name "file*" -exec ls -ilh {} \;
搜索上一级目录下文件名以"file"开头的文件,并显示文件的详细信息
#find /var/log/ -name "an*" -o -name "*.log" -ok rm -rf {} \;
搜索log目录下以"an"开头或者以".log"结尾的文件,对其执行删除操作,并在删除前询问
#grep [选项] [字符串] [文件名]
功能:在指定文件中搜索指定的字符串,并打印包含该字符串的行(包含匹配)
选项:-i 忽略大小写; -v 排除指定字符串