请关注本头条号,每晚坚持更新原创干货技术文章。

如需学习视频,请在陌陌搜索公众号“智传网优”直接开始自助视频学习

1.序言

本文主要介绍Linux系统下有什么全局搜索命令,并讲解相关命令的使用方式与日常使用案例。

我们先来了解一下Linux下主要的5个全局搜索的命令工具。她们分别是find,locate,grep,which,whereis

其中,find是一个强悍实时搜索工具,Linux支持的文件类型它都可以搜索到,locate通常是搜索文件linux命令速查手册 pdf,grep通常是搜索文本文件,which和whereis通常是用于搜索程序相关的文件内容。

linux速查手册_linux命令速查手册 pdf_linux查询手册

linux全局搜索命令

2.Linux使用find命令全局搜索文件

find命令在某个目录下查找。

通常使用格式:

find     

-pathname:所要查找的目录及其所有子目录(默认递归查找)。默认为当前目录。

-option:指定参数。

-filetype:想要查找的文件类型。

-action:对查找结果进行的处理。

在linux的日常管理中,使用find命令全局搜索文件的使用频度很高,熟练把握以及灵活运用对提升工作效率很有帮助。

find的句型比较简单,常用参数的就这么几个,例如-name、-type、-ctime等。本文只是介绍其中一些常用的使用案例linux系统装win7,假若须要更多的帮助,请参考find的使用指南。

2.1Linux使用`find`命令依照文件名全局搜索文件

搜索当前目录下名子为mypic.png的文件

[root@zcwyou ~]# find . -name "mypic.png"

搜索当前目录下所有的jpg文件

[root@zcwyou ~]# find . -name "*.jpg"

搜索当前目录下的jpg文件和png文件

[root@zcwyou ~]# find . -name "*.jpg" -o -name "*.png"

搜索当前目录下不是以png结尾的文件

[root@zcwyou ~]# find . ! -name "*.png"

2.2使用`find`命令按照正则表达式全局查找文件

搜索当前目录下,文件名以数字+png后缀结尾的文件。

[root@zcwyou ~]# find . -regex "./*[0-9]+.png" 

2.3使用`find`命令和指定的目录路径查找文件

搜索当前目录下linux查看进程,路径中包含folder的文件/路径。

[root@zcwyou ~]# find . -path "*folder*"

2.4使用`find`命令按照文件类型查找

通过-type进行文件类型的过滤。

例如,搜索当前目录下linux命令速查手册 pdf,路径中包含zcwyou的文件

[root@zcwyou ~]# find . -type f -path "*zcwyou*"

2.5Linux按照搜索深度查找文件

搜索当前目录下所有以txt后缀结尾的文件,不包括子目录。

[root@zcwyou ~]# find . -maxdepth 1 -name "*.txt"

相对应的,也是mindepth选项。

linux速查手册_linux查询手册_linux命令速查手册 pdf

[root@zcwyou ~]# find . -mindepth 2 -maxdepth 2 -name "*.png"

2.6Linux使用`find`命令按照文件大小搜索文件

通过-size来过滤文件规格。支持的文件大小单元如下

-b表示块(512字节)

-c表示字节

-w表示字(2字节)

-k表示千字节

-M表示兆字节

-G表示吉字节

例如,使用find命令搜索当前目录下文件大小超过100M的文件

[root@zcwyou ~]# find . -type f -size +100M 

2.7按照文件的访问、修改、变化时间全局搜索文件

支持下边的时间类型。

全局查找的案例1:搜索1天内被更改过的文件

[root@zcwyou ~]# find . -type f -mtime -1

全局查找的案例2:搜索近来1周内被访问过的文件

[root@zcwyou ~]# find . -type f -atime -7

将日志目录里超过一周的日志文件,联通到/tmp/log里。

[root@zcwyou ~]# find . -type f -mtime +7 -name "*.log" -exec mv {} /tmp/log ;

注意:{}用于与-exec选项结合使用来匹配所有文件,之后会被替换为相应的文件名。

另外,;拿来表示命令结束,假如没有加,则会有如下提示

find:-exec:noterminating”;”or”+”

Author

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

刘遄

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

发表回复