您的位置:首页 > 运维架构 > Linux

Linux查找方法

2015-08-04 11:54 555 查看

一、文件搜索命令:find

所在路径:/bin/find

使用方法:find [搜索范围] [匹配条件]

1.根据文件名来搜索文件

find  /etc  -name  init     (精准搜索)

find  /etc  -name  init*    (搜索以init开头的文件)

find  /etc  -name  init??   (搜索以init开头后面有两个任意字符的文件)

find  /etc  -iname init     (参数iname可以让查找忽略文件的大小写的区别)

2.根据文件的大小条件来搜索文件

linux下存取文件的最小单位是数据块大小=512byte;即是0.5K

find /   -size  +204800  在根目录下查找大于100M的文件

find /   -size  +163840  -a -size -204800 在根目录下查找大于80M小于100M的文件 

                         -a表示两个条件都要满足,-o表示两个条件满足任意一个即可

 

3.根据所有者查找,或者所属组的条件查找

find  /home  -usr  wxf

find  /home  -group  others

4.根据时间属性条件查找

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

-amin   访问时间access

-cmin   文件属性change

-mmin   文件内容modify

5.根据文件类型查找

-type 根据文件类型查找

f 文件   d目录   l软链接文件

find /etc  -name  init* -a -type f 查找/etc目录下以init开头的文件(注意不包含目录)

6.对找到的文件进行操作

find /etc  -name inittab  -exec  ls -l  {} \; 在/etc下查找inittab文件并显示其详细信息

语法格式如:-exec/ok 命令 {} \;  对搜索的结果执行操作,{} \;是固定的格式,不能写错

-ok是多了询问的模式 

7.根据i节点查找文件  

-inum

ls -i 显示当前目录文件的i节点

find  .  -inum  3153 -exec rm {} \; 删除当前目录i节点是3153的文件

二、locate 查找文件

注意 /tmp下的文件找不到

locate  文件名 即可

locate   -i  文件名 不区分大小写

有时需要updatedb下,在查找才能找到

locate的查询速度比find快很多

三、

1.which  查找命令的路径

查找命令的路径同时可以显示该命令是否有别名的相关信息

which cp

which rm

2.whereis  

可以显示该命令的路径同时可以显示该命令的帮助文档的路径

四、在文件内容中查找关键词句

grep  关键词句  绝对路径

grep  -i 关键词句  绝对路径  依旧不区分大小写查找

grep -v  字符串 绝对路径 排除指定字符串

例如:

grep -v  ^#  /etc/inittab 

在/etc/iniettab文件里查找不以#开头的行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: