locate 文件名
在后台数据库中按文件名搜索,搜索速度快,不用遍历整个操作系统
/var/lib/mlocate locate 命令所搜索的后台数据库
updatedb 手动更新数据库
新建的文件搜索不出来,大概一天自动更新一次数据库只能按照文件名来搜索
/etc/updatedb.conf 按照配置文件搜索
whereis 命令名
搜索系统命令所在路径及帮助文档所在位置
-b 只查找可执行文件
-m 只查找帮助文档
which 命令名
看到命令所在位置 和命令别名
cd 找不到是shell自带的命令. echo $PATH 环境变量 从环境变量里搜索命令
find [搜索范围][搜索条件] 搜索内容
避免大范围搜索,会非常耗费系统资源
find 在系统中搜索符合条件的文件名.如果需要匹配,使用通配符匹配,通配符是完全匹配. * 匹配任意内容 ?匹配任意一个字符 []匹配任意一个中括号内的字符
find /root -iname install.log -iname 不区分大小写
find /root -user root 按所有者搜索
find /root -nouser 查找没有所有者的文件
find /var/log/ -mtime +10 查找10天前修改的文件 -10 10天内修改的文件 10 10天当天修改的文件 +10 10天前修改的文件
atime 文件的访问时间 ctime 改变文件属性 mtime 修改文件内容
find . -size 25k 查找文件大小是25KB的文件 .指当前目录 -25k小于25k +25k大于25k 25k正好25k
find /root -inum 32332 听说i节点来查找文件
find /etc -size +20k -a -size -50k -a and 逻辑与,两个条件都满足 -o or 逻辑或,两个条件满足一个即可
find /etc -size +20k -a -size -50k -exec ls -l {} \; -exec/-ok 命令2 {} \ 执行第一条搜索出的结果交给第二条命令处理
grep命令
grep [选项] 字符串 文件名 在文件中匹配符合条件的字符串,如果需要匹配,使用正则表达式进行匹配,正则表达式是包含匹配
-i 忽略大小写 -v 排除指定字符串