文件搜索

106 阅读1分钟

1.find

-name

根据文件名搜索,默认精准搜索,模糊搜索要加上通配符*和?,?匹配单个任意字符,*匹配多个任意字符。

find / -name nginx在目录/下查找文件名为nginx的文件。

-iname

根据文件名搜索,忽略大小写。

find / -iname NGINX

-size

根据文件大小查找, 单位是1数据块,1数据块是0.5K, +代表大于,-代表小于,什么都不加代表等于。

find / -size +204800 查找大小大于100M的文件, 100 *1024 * 2 = 204800

-user

根据所有者查找文件。

find /etc -user chenmx

-group

根据所有者查找

find /etc -group chenmx

-amin

按照访问时间查找, 单位:分钟, +代表大于,-代表小于,什么都不加代表等于。

find /etc -amin -5 查找/etc目录下5分钟内被访问过的文件。

-cmin

按照文件属性修改时间查找。

find /etc -cmin -10 查找/etc目录下10分钟内被修改过属性的文件。

-mmin

按照文件内容修改时间查找。

find /etc -mmin +10 查找/etc目录下10分钟前文件内容被修改过的文件。

-type

根据文件类型查找, f:文件,d:目录,l:软链接。

find /etc -type f 查找/etc目录下的文件。

2.grep

在文件内容中查找指定字串。

-v

反选

grep -v ^# /opt/redis/redis.conf 查找redis.conf中不是以#开头的行。

-i

查找执行关键字,忽略大小写。

grep -i hz /opt/redis/redis/conf 在redis.conf中查找包含hz的部分。