文件搜索命令

文件搜索 find
在文件资料库中查找文件 locate
搜索命令所在目录及别名信息 whichis
搜索命令所在目录及帮助文档路径 whereis
在文件中搜索字串匹配的行并输出 grep


文件搜索

命令名称:find
命令所在路径:/bin/find
执行权限:所有用户
语法:find [搜索范围][匹配条件]
功能描述:文件搜索
范例:find /etc -name init (精确查找)
在目录/etc中查找文件init
-iname表示文件名不区分大小写

find / -size +204800
在根目录下查找大于100MB的文件
+n大于 -n小于 n等于
数据块:204800表示大小为100MB的文件。linux中用数据块表示大小,一个数据块=512K=0.5K
100MB=102400KB=204800

find /home -user(-group) HDU
在家目录下查找所有者(所属组)为HDU的文件

find /etc -name *init*
查出含有init字符的文件
find /etc -name init*
以init开头的文件
find /etc -name init??
init后面还有2个字符
*表示任意字符,?表示匹配单个字符

根据时间属性查找
find /etc -cmin -5
在/etc 目录下查找5分钟内被修改过属性的文件和目录
-amin 访问时间 access
-cmin 文件属性 change
-mmin 文件内容 modify

find /etc -size +163840 -a -size -204800
在/etc目录下查找大于80MB小于100MB的文件
-a 两个条件同时满足(and)
-o 两个条件满足一个即可(or)

find /etc -name inittab -exec ls -lh {} \;
在/etc下查找inittab文件并显示其详细信息
-exec/ok 命令 {} \; 对搜索结果执行操作(ok选项在执行时会询问)

find /etc -name init* -a -type d
-type 根据文件类型查找(l文件,d目录,l软链接)
-iname 根据i节点查找

在文件资料库中查找文件

命令名称:locate
命令所在路径:/usr/bin/locate
执行权限:所有用户
语法:locate 文件名
功能描述:在文件资料库中查找文件
范例:locate inittab

系统中有一个文件资料库,查找速度比locate快
但是有时创建文件后,文件资料库还没那么快更新,所以可以用updatedb命令更新文件资料库。
临时文件不在文件资料库的搜索范围内

搜索命令所在目录及别名信息

命令名称:which
命令所在路径:/usr/bin/which
执行权限:所有用户
语法:which 命令
功能描述:搜索命令所在目录及别名信息
范例:which ls
bin:在bin目录下的命令所有用户都能执行
sbin:在sbin目录下的命令只有root才能执行

搜索命令所在目录及帮助文档路径

命令名称:whereis
命令所在路径:/usr/bin/whereis
执行权限:所有用户
语法:whereis [命令名称]
功能描述:搜索命令所在目录及帮助文档路径
范例:whereis ls

在文件中搜索字串匹配的行并输出

命令名称:grep
命令所在路径:/bin/grep
执行权限:所有用户
语法:grep -iv [指定字串][文件]
功能描述:在文件中搜索字串匹配的行并输出
-i 不区分大小写
-v 排除指定字串
范例:grep mysql /root/install.log

#号开头表示配置文件的注释或脚本的注释
grep -v # /etc/inittab
但是#所在的行都被去掉了
grep -v \^# /etc/inittab
去掉以#开头的行

猜你喜欢

转载自blog.csdn.net/c_aflte/article/details/52043312