首页 > 系统服务 > 详细

linux搜索命令

时间:2021-01-24 18:33:40      阅读:30      评论:0      收藏:0      [点我收藏+]

一.locate(搜索文件)

1.命令格式

locate 文件名

说明:locate命令不在系统中搜索文件(即不遍历整个系统),而是在/var/lib/mlocate(centos7中为此目录,可使用locate locate命令查看此目录路径)数据库中搜索,/var/lib/mlocate数据库默认每天更新一次,要查找新创建的文件就要去更新(通过updatedb命令)此数据库后再进行搜索

2.优点

在后台数据库中按文件名进行搜索,所以搜索速度快

3.缺点

只能按文件名搜索

4.注意

locate按照配置文件/etc/updatedb.conf进行搜索,配置文件的内容如下图

技术分享图片

PRUNE_BIND_MOUNTS = "yes" 表示开启搜索限制

PRUNE_BIND_MOUNTS = "no" 表示关闭搜索限制

PRUNEFS 表示搜索时不搜索的文件系统

PRUNENAMES 表示搜索时不搜索的文件类型

PRUNEPATHS 表示搜索时不搜索的路径

二.whereis(搜索命令)

1.命令格式

whereis 命令名

说明:搜索外部命令所在路径及帮助文档所在位置(Linux的shell内置命令不能通过whereis找到命令路径,只能看到帮助文档的路径,如pwd、cd)

-b  只查看命令所在位置(即命令的可执行文件)

-m  只查找帮助文档所在位置

技术分享图片

三.which(搜索命令)

1.命令格式

which 命令名

说明:搜索外部命令所在路径及别名(不是所有命令都有别名,Linux的shell内置命令无法用此命令)

技术分享图片

注意:

在Linux中要想执行一个命令需要用绝对路径,由于系统定义了环境变量PATH(即系统搜索命令的路径),当执行一个命令时,会在PATH指定的路径中搜索是否有这样一个执行文件或者脚本存在(因为环境变量的存在,所以系统命令可以不打绝对路径),若自己定义了一个执行文件需要执行时就要打上绝对路径,或者把执行文件的路径放在PATH环境变量下。linux下查看环境变量:

技术分享图片

四.find(搜索*文件*

1.命令格式

find [搜索范围] [搜索条件]

说明:find命令对文件进行搜索的时候完全匹配文件名,若想进行模糊搜索则使用通配符匹配

? Linux中通配符有 :* 匹配任意内容

? ? 匹配一个任意字符

? [] 匹配中括号内任一字符

2.示例

在根目录下搜索名为initial-setup-ks.cfg的文件,注根目录下搜索相当于遍历根目录,会耗费资源

技术分享图片

在/root目录下利用通配符分别搜索文件名为以a、b开头以任意字符结尾的文件

技术分享图片

-name 按照文件名完全匹配搜索

-iname 按照文件名不区分大小写搜索

-user 按照所有者进行搜索,后面为Linux的登录账户名

-nouser 查找没有所有者的文件(不是所有的没有所有者的文件都是垃圾文件,内核产生的根目录proc、sys路径下的,或者外来文件即外接盘内的文件会没有所有者,但不是垃圾文件)

-mtime 按照修改的时间范围搜索文件

技术分享图片

技术分享图片

技术分享图片

-atime 根据文件的访问时间搜索

-ctime 根据文件属性改变的时间搜索

-size 根据文件大小搜索

-inum 根据文件的i节点搜索

技术分享图片

查找root目录下大于10k小于30k的文件(-a 表示与and,-o表示或or)

技术分享图片

查找root目录下大于10k小于30k的文件并显示文件详细信息(-exec 命令 {} ; 对搜索结果进行操作)

技术分享图片

五.grep(搜索字符串)

1.命令格式

grep [选项] 字符串 文件名

说明:grep命令是在文件中搜索符合条件的字符串,如需匹配使用正则表达式进行包含匹配

2.选项

-i 忽略大小写

-v 排除指定的字符串

技术分享图片

本文由博客一文多发平台 OpenWrite 发布!

linux搜索命令

原文:https://www.cnblogs.com/manongxianfeng/p/14320897.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!