find [搜索范围][搜索标准] 关键字
find *.txt | 搜索当前目录下,所有的.txt文件 |
find *a* | 搜索当前目录下,所有名称中包含a的那些文件或者目录 |
find /opt *.txt | 搜索/opt目录下所有.txt文件 |
find /opt -size -5k find /opt -size +5k | 搜索/opt目录下所有小于5k的文件 搜索/opt目录下所有大于5k的文件 |
find /opt -user zhangsan | 搜索/opt目录下所有的所有者是zhangsan的文件和目录 |
默认按名称搜索,-name(不写也不要紧)
-size:按文件大小搜索 - :表示小于多少的文件 + :表示大于多少的文件
-user:按文件的所有者搜索
locate
在整棵目录树中搜索文件或者目录,都是根据名称搜索,效率高。
updatedb:同步数据库
locate 关键字
搜索过滤命令
在前一个搜索命令的结果中进行按名称进一步过滤:
搜索命令 |grep [选项] 过滤条件
查看命令 |grep [选项] 过滤条件
例如:
find *.txt|grep new 搜索当前目录下,所有名称包含new的.txt文件
cat /opt/test/a.txt|grep t :意思:就是输出a.txt中包含t的所有行
cat t1.txt|grep -i b 就是输出a.txt中包含b的所有行(忽略b的大小写ignore)
cat t1.txt|grep -ni t 就是输出a.txt中包含t的所有行(忽略大小写,并显示行号)
ls -al|grep a :按列的形式显示包含a的文件