find命令 linux_linux 系统 find命令源代码_linux命令find

Linux中查找文件的有好多,可能你们普遍用到比较多的是find,但locate、whereis、which也是比较好用的查找。

它们的主要区别是:

find:是个很强悍的查找,能做到实时查找,精确查找,但查找内容较多时速率慢,效率低

locate:查找速率快linux 版本,但不是实时查找,查找的结果不精确

whereis:用于查找二补码文件、源代码文件和帮助指南;

which:会在环境变量$PATH设置的目录里查找符合条件的文件

1

find查找文件

find拿来在指定目录下查找文件。

任何坐落参数之前的字符串都将被视为欲查找的目录名。

linux 系统 find命令源代码_find命令 linux_linux命令find

假如使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。而且将查找到的子目录和文件全部进行显示。

find

path:所要搜索的目录及其所有子目录。默认为当前目录。

expression:所要搜索的文件的特点。

-cminn:在过去n分钟内被更改过

-ctimen:在过去n天内被更改过的文件

-mtimen:在过去n天内被更改过的文件

-mminn:在过去n分钟内被更改过

-empty:空的文件,找寻文件大小为0Byte的文件,或目录下没有任何子目录或文件的空目录;

-ipathp,-pathp:匹配文件路径马哥linux,ipath会忽视路径大小写

-namename,-inamename:匹配文件名称。iname会忽视名称大小写

-sizen:匹配文件大小,单位有:c--字节,k--千字节,M--兆字节,G--GB

-typec:匹配文件类型,c是指定的类型。(文件类型参数有:f--普通文件,d--目录,l--符号链接)

-exec:假定find指令的回传值为True,就执行该指令;

-ok:此参数的疗效和指定“-exec”类似,但在执行指令之前会先寻问用户,若回答“y”或“Y”,则舍弃执行命令;

-regex:指定字符串作为找寻文件或目录的范本式样

将当前目录及其子目录下所有.py后缀的文件列下来:

find.-name"*.py"

find.-iname"*.py"

匹配文件路径或则文件:

linux命令find_find命令 linux_linux 系统 find命令源代码

find/usr/-path"*local*"

基于正则表达式匹配文件路径:

find.-regex".*(.txt|.doc)$"

(查找当前目录及子目录下所有以.txt或.doc结尾的文件)

查找近来3天内被访问过的所有文件:

find.-typef-atime-3

在当前目录下查找文件宽度小于10kb的文件

find.-size+10k

2

locate查找文件

linux命令find_find命令 linux_linux 系统 find命令源代码

locate查找命令比较简单且不是实时的linux find命令源代码,而是以数据库的更新为准。

locate实际上查的是一个保存文档和目录名称的数据库,默认是/var/lib/slocate/slocate.db

Linux系统手动创建这个数据库,但是每晚手动更新一次,为此,我们在用locate查找文件时,有时会找到早已被删掉的数据,或则刚才构建文件,却难以查找到linux 系统 find命令源代码,诱因就是由于数据库文件没有被更新。

为了防止这些情况,可以在使用locate之前,先使用updatedb命令,自动更新数据库(也可以使用locate-u命令来更新)

查找出以passwd开头的所有文件

locatepasswd

查找出/data/jjing/目录下所有以test开头的文件或文件夹下的所有内容

locate/data/jjing/test

3

whereis查找文件

whereis命令只能用于程序名的搜索,并且只搜索二补码文件(参数-b)、man说明文件(参数-m)和源代码文件(参数-s)。假如省略参数,则返回所有信息。

查找passwd这个文件名有关的所有数据

#whereispasswd

passwd:/usr/bin/passwd/etc/passwd/usr/share/man/man1/passwd.1.gz

4

which查找文件

which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,但是返回第一个搜索结果。也就是说,使用which命令,就可以看见某个系统命令是否存在,以及执行的究竟是哪一个位置的命令。

$whichgrep

/bin/grep

Linux查找文件的命令就介绍如此多了,关注「爱软测」,一起提高测试技术!

本文原创地址://lrxjmw.cn/lzczwjdml.html编辑:刘遄,审核员:暂无