每天迈一步:linux命令查找文件

Posted 娜娜_nana

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天迈一步:linux命令查找文件相关的知识,希望对你有一定的参考价值。

linux命令查找文件

有的文件很久不用就忘记名字了,只有一个模糊的印象,此时查找文件命令就显得尤其重要!相对于windows来说,linux提供了更强大的查找命令。

(这里仅仅掌握一下常用的,因此不详细解释了~~~~)

1. find

命令格式:

find <指定目录> <选项> <参数>  <指定动作>  

<指定目录> :一般是默认目录

<选项><参数> :

-name    按照文件名查找 
-iname   根据文件名查找,但是不区分大小写

 -user     按照文件属主来查找文件 :find / -user fred      //查找在系统中属于FRED这个用户的文件 

-a,-o,-not的使用:-a      连接两个不同的条件(两个条件必须同时满足)

                                       #find /tmp -name "*.sh" -a -user root  

                              -o      连接两个不同的条件(两个条件满足其一即可)

                                         #find /tmp -name "*.sh" -o -user root  

                             -not 对条件取反的

                                       #find /tmp -not -user root             

-type 查找某一类型的文件 :f 普通文件 d 目录 

-size n[c] 查找文件长度为n块的文件,带有c时表示文件长度以字节计 :#find /tmp -size  2M           //查找在/tmp 目录下等于2M的文件 

 <指定动作> :

-print            //默认情况下的动作
-ls               //查找到后用ls 显示出来

 

例子:查找已知部分文件名log的文件:find  -name "*log*"  (在当前目录下查找)

          查找到"config.py"文件后即时在屏幕上显示"config.py"文件信息:find . -name "config.py" -ls  

 

2. locate(比find更好用,比find快,它直接搜索数据库)

查找之前最好更新一下数据库,对于新建的文件是必要的,命令:updatedb

搜索etc目录下所有以sh开头的文件:locate /etc/sh 

搜索用户主目录下,所有以m开头的文件:locate ~/m

搜索用户主目录下,所有以m开头的文件,并且忽略大小写:locate -i ~/m

查找makefile做结尾的文件:locate -r makefile$  

查找以/var/lib/dpkg/info/开头的文件:locate -r ^/var/lib/dpkg/info/ 

 

啦啦啦啦啦啦~~~(今天也是一枚开心的寄几^-^)


 

 

 



以上是关于每天迈一步:linux命令查找文件的主要内容,如果未能解决你的问题,请参考以下文章

每天一个linux命令(文件操作):转载find命令之exec

每天一个 Linux 命令(17):whereis 命令

每天一个linux命令(17):whereis 命令

每天一个linux命令(17):whereis 命令

每天一个Linux命令(17)--whereis命令

每天One Linux 命令 | egrep:在文件内查找指定的字符串