您现在的位置是:亿华云 > 系统运维
Linux搜索文件的5个高效命令的正确使用方法
亿华云2025-10-09 03:40:36【系统运维】7人已围观
简介1. 前言本文主要讲解Linux系统里最常用的5个高效搜索文件的命令,他们分别是which,type,whereis,locate,find他们的使用分别是:which:在PATH路径变量中,搜索系统
1. 前言
本文主要讲解Linux系统里最常用的搜索文使用5个高效搜索文件的命令,他们分别是个高which,type,效命whereis,正确locate,搜索文使用find
他们的个高使用分别是:
which:在PATH路径变量中,搜索系统命令对应文件的效命目录位置 type:用于显示哪些命令是shell自带的,哪些命令是正确外部命令。如何使用选项-p,搜索文使用会显示外部命令的个高保存位置,相当于which命令。效命 whereis:只能用于搜索程序名,正确选项-b用于搜索二进制文件,搜索文使用即编译好的个高文件、选项-m用于搜索用户手册文件和选项-s用于搜索源代码文件 locate:基于数据库缓存信息显示文件位置,效命并不是实时查找,如果想要实时查找,使用前需要手动更新数据库。 find:Linux系统最常用和最强大的查找命令,用于实时查找硬盘上的文件。云南idc服务商注意:
在这5个命令中,find命令是最慢的,原因是它可以搜索任意类型的文件,并且是实时查找的。
通常先使用whereis或者locate查找文件,如果没有找到目标文件,再用find命令
这是因为whereis与locate通过查询数据库来定位文件路径的,所以相当快速,比较节省时间。而find命令是通过实时搜索硬盘的文件的。
locate命令是mlocte软件套件的一个子命令集,通过以下命令安装mlocate套件
[root@CentOS7 ~]# yum -y install mlocate总下载量:113 k
安装大小:379 k
Downloading packages:
mlocate-0.26-8.el7.x86_64.rpm | 113 kB 00:00:00
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
正在安装 : mlocate-0.26-8.el7.x86_64 1/1
验证中 : mlocate-0.26-8.el7.x86_64 1/1
已安装:
mlocate.x86_64 0:0.26-8.el7
完毕!
执行以下命令手动更新数据库:
[root@CentOS7 ~]# updatedbupdatedb命令通过读取/etc/updatedb.conf中的配置,然后搜索整个Linux文件系统的文件,然后更新数据库文件,查找文件直接读取该数据库
2. 搜索系统命令位置-`which`命令
which命令在PATH变量指定的路径中,搜索某个系统命令的位置,亿华云计算并且返回第一个搜索结果。
which命令的格式如下:
which [-a] commandwhich命令的参数如下:
-a:将所有由PATH目录中可以找到的命令均列出来,而不是只列出第一个被找到的命令。使用案例,通过which命令查找wget程序文件所在的目录位置:
[root@zcwyou ~]# which wget/usr/bin/wget
可以看出wget的程序位置
3. 搜索程序相关的文件命令`whereis`
whereis命令的使用格式如下:
whereis [-bmsu] 文件或目录名whereis命令的选项作用如下:
选项备注-b只搜索程序二进制文件-m只搜索程序对应的使用手册-s只搜索程序源文件-u查找不在上述三个选项当中的其他特殊文件
使用locate搜索案例:
搜索locate这个命令程序所在的位置:
[root@CentOS7 ~]# whereis locate搜索结果如下,可以看出locate程序的程序文件和手册文件所在的位置
locate: /usr/bin/locate /usr/share/man/man1/locate.1.gz
搜索chmod程序的使用手册文件
[root@zcwyou ~]# whereis -m chmodchmod: /usr/share/man/man1/chmod.1.gz
搜索程序相关的文件命令之whereis
4. 通过`locate`命令搜索文件
locate命令的格式如下:
locate [-ir] keywordlocate命令的参数如下:
-i:忽略大小写差异; -r:后面可接正则表达式的实现方式。使用案例:
[root@zcwyou ~]# locate useradd/etc/default/useradd
/usr/sbin/luseradd
/usr/sbin/useradd
/usr/share/man/de/man8/useradd.8.gz
/usr/share/man/fr/man8/useradd.8.gz
/usr/share/man/id/man8/useradd.8.gz
/usr/share/man/it/man8/useradd.8.gz
/usr/share/man/ja/man8/useradd.8.gz
/usr/share/man/man1/luseradd.1.gz
/usr/share/man/man8/useradd.8.gz
/usr/share/man/ru/man8/useradd.8.gz
/usr/share/man/tr/man8/useradd.8.gz
/usr/share/man/zh_CN/man8/useradd.8.gz
/usr/share/man/zh_TW/man8/useradd.8.gz
5. 使用Linux最强大的搜索命令工具`find`
可以通过find命令查找Linux系统文件上的任何文件
使用Linux最强大的搜索命令工具find
find命令的使用格式如下:
find [PATH] [option] [action]5.1 `find`命令基于文件名的搜索
与文件名有关的参数如下:
-name filename:查找文件名为filename的源码库文件。filename可使用正则表达式表示。
使用案例:
[root@CentOS7 ~]# find / -name sz/usr/bin/sz
查找文件名为sz的文件。
5.2 `find`命令之基于文件大小的搜索
如果想通过文件大小做为搜索条件的话,可以使用以下参数:
-size xxx:查找刚好等于xxx大小的文件; -size -xxx:查找大于xxx的文件; -size +xxx:查找小于xxx的文件。其中,xxx的单位有:
-c字节byte;
-w 表示汉字(2字节);
-b块(512字节);
- k表示千字节;
- M 表示兆字节;
- G 表示吉字节。
find使用案例:
搜索当前目录下大于99KB的文件
[root@zcwyou ~] # find . -type f -size +99k搜索当前目录下等于88KB的文件
[root@zcwyou ~] # find . -type f -size 88k5.3 `find`命令之基于文件类型的搜索
与文件类型有关的选项如下:
选项-type 表示定义查找目标文件的类型。
TYPE的参数列表有:
-f :普通文件;
-l:符号连接;
-d:目录;
-c :字符设备;
-b :块设备;
-s :套接字;
- p:FIFO。
使用案例:
查找/proc目录下所有类型为socket的文件。
[root@zcwyou ~] # find /proc -type s5.4 `find`命令之基于文件时间进行搜索
与时间有关的参数共有 -atime、-ctime、-mtime。下面以-mtime说明:
-mtime n: n为数字,列出在n天之前的“一天之内”被更改过的文件名; -mtime +n:列出在n天之前(不含第n天本身)被更改过的文件名; -mtime -n:列出在n天之内(不含第n天本身)被更改过的文件名; -newer file:file为一个存在的文件,列出比file还要新的文件名。下面以几个实际写法解释此用法:
-mtime +2,表示2天以外的,即从距离当前时间的2天前开始算起,往更早的时间推移。
-mtime +1,表示1天以外的,即从距当前时间的1天前算起,往更早的时间推移。
-mtime 1, 距离当前时间第1天的文件,因此以此为时间点。
使用案例:
查找从现在开始到24小时前,/etc目录下所有改动过内容的文件都会被列出来。
[root@zcwyou ~] # find /etc -mtime 0查找/etc目录下,所有比/etc/passwd文件更新的文件。
[root@zcwyou ~] # find /ect -newer /etc/passwd其它更多关于find命令的使用方法请参考本站的教程:
Linux find命令查找文件34个实用案例
6. 总结
linux搜索文件的命令必须牢记,系统运维频繁要用到的,掌握这5大命令的用法能极大提升运维效率。
很赞哦!(64235)
上一篇: 2. 不要花大价钱买域名,新手鉴别能力不足,容易投资失误。
下一篇: 四、一定要仔细阅读细节
相关文章
- 域名资源有限,好域名更是有限,但机会随时都有,这取决于我们能否抓住机会。一般观点认为,国内域名注册太深,建议优先考虑外国注册人。外国注册人相对诚实,但价格差别很大,从几美元到几十美元不等。域名投资者应抓住机遇,尽早注册国外域名。
- 手把手教你挑选高质量的老域名
- Tv域名对seo优化有影响吗?
- 光大证券开源技术治理探索和实践
- cm域名有什么独特之处?新人要了解cm域名哪些?
- 用AI指挥另一个AI,GAN+CLIP的组合成了“CG艺术家”
- Geopandas 0.11版本重要新特性一览
- 如何将老域名的价值最大化?
- 4、域名传输时,取决于域名原始用户的邮箱是否有效,以及他是否将密码发送到此邮箱。
- 学会这五个小技巧,轻松选择好域名!
热门文章
站长推荐
因为域名解析需要同步到DNS根服务器,而DNS根服务器会不定时刷,只有DNS根服务器刷新后域名才能正常访问,新增解析一般会在10分钟左右生效,最长不会超过24小时,修改解析时间会稍微延长。
选择域名网站空间的几点要素
Python快速入门,看这一篇就够了!
微信群总是有人发广告?看我用Python写一个自动化机器人消灭他!
用户邮箱的静态密码可能已被钓鱼和同一密码泄露。在没有收到安全警报的情况下,用户在适当的时间内不能更改密码。在此期间,攻击者可以随意输入帐户。启用辅助身份验证后,如果攻击者无法获取移动电话动态密码,他将无法进行身份验证。这样,除非用户的电子邮件密码和手机同时被盗,否则攻击者很难破解用户的邮箱。
Netflix 怎样做系统监控?
域名转移收费吗?转入有没有条件?
Docker 实战教程之从入门到提高 (八)