文件搜索命令
文件搜索命令
文件搜索命令locate
1 | locate [文件名] |
/etc/updatedb.conf
配置文件
1 | PRUNE_BIND_MOUNTS = "yes" 开启搜索限制 |
命令搜索命令whereis与which
1 | whereis [命令名] |
PATH环境变量
定义系统搜索命令的路径
1 | 查看当前环境变量 |
文件搜索命令find
1 | $find [搜索范围] [搜索条件] |
搜索条件:
-iname 不区分大小写
-user 按照所有者搜索
-nouser 查找没有所有者的文件
1 | $find / -name install.log |
避免大范围搜索,会非常耗费系统资源
find是在系统当中搜索符合条件的文件名,如果需要匹配,使用通配符匹配通配符是完全匹配
Linux中的通配符:
* 匹配任意内容
? 匹配任意一个字符
[ ] 匹配任意一个括号内的字符
1 | $find /var/log/ -mtime +10 |
查找十天前修改的文件
-10 10天内修改文件
10 10天当天修改的文件
+10 十天前修改的文件
atime 文件访问时间
ctime 改变文件属性
mtime 修改文件内容
1 | $find . -size 25k |
查找文件大小是25kb的文件
-25k 小于25k的文件
25k 等于25k的文件
+25k 大于25k的文件
1 | $find . -inum 262422 |
查找i节点是262422的文件
1 | $find /etc -size +20k -a -size -50k |
查找/etc/
目录下,大于20KB并且小于50KB的文件
-a and 逻辑与,两个条件都满足
-o or 逻辑或, 两个条件满足一个即可
1 | $find /etc -size +20k -a -size -50k -exec ls -lh {} \ |
查找/etc/
目录下, 大于20KB并且小于50KB的文件,并显示其详细信息
字符串搜索命令grep
1 | grep [选项] 字符串 文件名 |
在文件当中匹配符合条件的字符串
选项:
-i 忽略大小写
-v 排除指定字符串