linux中find和grep常见命令
find [搜索范围] [搜索条件]
#搜索文件
find / -name install.log
#避免大范围搜索,会非常耗费系统资源
#find是在系统当中搜索符合条件的文件名。如果需要匹配,使用通配符进行匹配
Linux中的通配符
* 匹配任意内容
? 匹配任意一个字符
[] 匹配任意一个中括号内的字符
find /root -iname install.log
#不区分大小写
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
-25k 小于25kb的文件
25k 等于25kb的文件
+25k 大于25kb的文件
*注意大小写,k,M
find 目录 -inum 262422
#查找i节点为262422的文件
find /etc -size +20k -a -size -50k
#查找/etc目录下,大于20kb小于50kb的文件
-a 两个条件都满足
-o 两个条件满足一个
find /etc -size +20k -a -size -50k -exec ls -lh {}\;
#查找/etc目录下,大于20kb小于50kb的文件,并显示详细信息
#-exec /-ok命令{}\; 对搜索结果进行操作
grep [选项] 字符串 文件名
#在文件中匹配符合条件的字符串
选项:
-i 忽略大小写
-v 排除指定字符串
find命令与grep命令区别
find:在系统中搜索符合条件的文件名,如果需要匹配,使用通配符匹配,通配符是完全匹配。
grep:在文件中搜索符合条件的字符串,如果需要匹配,使用正则表达式进行匹配。