Linux系统是许多程序员和开发人员首选的操作系统。其开源性、高度可多样化、强大的命令行工具等优点促使Linux倍受欢迎。而在Linux操作系统下,文件管理是一个很基础、也很重要的部份。本篇文章将详尽介绍在Linux系统中怎样进行文件查找,并提供一些相关的命令和实例。

1.基本句型

在Linux中查找文件的命令是“find”,其基本句型如下:

find[查找路径][查找条件]

其中,[查找路径]是你想要查找的目录或文件所在的路径,可以是相对路径或绝对路径。[查找条件]则是通过各类不同的选项来指定查找条件。

2.基本选项

在使用find命令时,可以结合各类选项来进行文件查找。以下是一些最基本的选项:

-name匹配文件名

-type匹配文件类型

-user匹配文件所有者

-group匹配文件所属组

-size匹配文件大小

-mtime匹配文件更改时间

2.1匹配文件名

使用“-name”选项来匹配文件名,可以使用转义(*、?等)来指定模式,如:

find/home-name“*.txt”

上述命令的意思是在/home目录下查找所有扩充名为“.txt”的文件。须要注意的是,在使用转义时,一般须要将其用冒号括上去,否则可能会出现错误或毋须要的输出。

2.2匹配文件类型

使用“-type”选项来匹配文件类型,可以指定包括普通文件(“-typef”)、目录(“-typed”)、符号链接(“-typel”)等不同的类型。诸如:

find/home-typef-name“*.txt”

上述命令的意思是在/home目录下查找所有普通文件,且文件名满足模式“*.txt”。

2.3匹配文件所有者和所属组

使用“-user”和“-group”选项来匹配文件所有者和所属组。诸如:

find/home-useruser1-groupgroup1

上述命令的意思是在/home目录下查找所有所有者为“user1”,所属组为“group1”的文件。

2.4匹配文件大小

使用“-size”选项来匹配文件大小,可以指定大小的数值和单位(kb、mb等)。诸如:

find/home-size+1M

上述命令的意思是在/home目录下查找所有小于1MB的文件。

2.5匹配文件更改时间

linux查找文件名命令_查找文件命令linux_linux查找文件名称

使用“-mtime”选项来匹配文件更改时间linux查找文件名命令,可以指定时间的天数。诸如:

find/home-mtime-30

上述命令的意思是在/home目录下查找所有更改时间在30天以内的文件。

3.组合选项

不仅基本选项以外,还可以结合多个选项一起使用,以实现更精确的文件查找。诸如:

find/home-typef-size+1M-mtime-30-useruser1-groupgroup1-name“*.txt”

上述命令的意思是在/home目录下查找所有所有者为“user1”,所属组为“group1”如何安装linux,文件名满足“*.txt”模式linux查找文件名命令,大小小于1MB,更改时间在30天以内的普通文件。

4.实例

下边给出一些实际的应用实例。

4.1查找文件并删掉

假定某个目录下有大量的“txt”文件linux培训学校,且须要将其中大小小于1KB的文件全部删掉,可以使用以下命令:

find.-typef-name“*.txt”-size-1k-execrm{};

上述命令的意思是在当前目录下查找所有扩充名为“.txt”、大小大于1KB的文件,并将其删掉。

4.2查找并统计文件数目

假定某个目录下有大量的“log”文件,须要统计一下那些文件的数目,可以使用以下命令:

find.-typef-name“*.log”|wc-l

上述命令的意思是在当前目录下查找所有扩充名为“.log”的文件,并使用管线将其输出到wc命令中,以统计数目。

在Linux操作系统中使用find命令来查找文件是十分常用的操作。把握基本句型和选项,就能灵活组合,就可以实现精确的文件查找和处理。

相关问题拓展阅读:

Linux中查找文件夹的命令

1)相对路径:参局凯照当前目录进行查找。如:#cd../opt/hosts/

2)绝对路径:从根目录开罩物始指定,一级一级递归查找。物腊液在任何目录下都能步入指定位置。如:#cd/opt/hosts/

Linux中查找

文件夹

的命令是find命令。

Linux-文件搜袭搜索命令find的操作使用方式如下:

1、全盘搜索,也可以指定目录搜索。find搜索目录-name目标名子,find/-namefile

2、这样搜索见到的都是file的完全匹配,分辨大小写的,可以用-iname不分辨大小写,find/-inamefile。这样我们就可以多查找到小写的相关文件了。

3、我们先使用*

转义

来匹配下包含file的相关文件分辨大小好谈写的:find/-name*file*。不分辨大小写的:find/-iname*file*。这样匹配的话文件就比较多了,越精准的匹配越有利于查找。

4、find搜索目录-size文件大小。下边我们查找下小于100MB的文件,应当实际是102400KB*2,所有搜索命令为:find/-size+202300。-号是大于,直接写数友禅碰字就是等于。

5、find搜索目录-user

用户名

。这儿是查找属于用户名为user1的文件,linux怎么添加删掉用户名,可以参考Linux用户管理命令:find/-useruser1。

6、find搜索目录-typed。查找某个目录下的所有目录:find/tmp-typed。

7、find搜索目录-cmin-时间(单位分钟)。查找etc下边1小时内被更改的文件,

根目录

下边太多了,指定一个目录:find/etc-cmin-60。

8、当然find命令是可以多个选项一起添加查询的:-a是前后条件都要满足,-o是满足一个条件就好,这样我们可以消除的看见被过滤掉的文件。

东部野大升开源李天明颂老老师Linux从小白到精通课程之Linux下的文件管理不须要任何基础,只用双眼不烧脑的课程本仿局节系列视频可让您2小时内精通用户管理机制

find/-typed查找文件夹

Linux操作系统下查找文件的几种方式

Linux查找文件常用的命令有派链迅find、whereis、locate和which。

find

词组本身就是查找的意思,意思在指定根路径下找目标文件。

文件名查询唤兄:findpath-namefile

目标文件也可以使用*模糊查询,如:find/-nametest*

which

which查找文件的形式与find略有不同,which从环境变量文件(/etc/profile)中的path目录中查找,且which找的都是可执行文件。

命令:whichfilename

PS:which不能使用*模糊查询

locate

这是区别以上两种的方法的一种查找文件形式,locate以一个数据库文件为基础查找。

Linux系统每晚起码手动扫描一次文件,将结果保存到数据库,locate查的是数据库记录。

locate查询比find要快,但最新文件若果在数据库中没有记录,会查询不到,次是须要自动更新(updatedb)

whereis

与which类似查询可执行文件,尘此whereis查询更多,会查找出相关的man文件

linux下最强悍扒逗清的搜索命令春前为”find“。它的格式为”find“;例如使用find命令搜索在根目录下的指销所有interfaces文件所在位置,命令格式为”find/-name‘interfaces’“

使用locate搜索linux系统中的文件,它比find命令快。由于它查询的是数据库(/var/lib/locatedb),数据库包含本地所有的文件信息。使用locate命令在根目录下搜索interfaces文件的命令为”locateinterfaces“

使用”whereis“命令可以搜索linux系统中的所有可执行文件即二补码文件。使用whereis命令搜索grep二补码文件的命令为”whereisgrep“。

Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复