Linux文件查找常用命令(下)

Linux文件查找常用命令:

1.locate:在文件资料库中查找文件

  locate 文件名(直接跟上文件名就可以查找文件)

  locate struggle:查找文件struggle

   在Linux系统中,有一个定期维护的文件资料库,系统里所有的文件都会被定期收录到文件资料库中,使用locate查找文件时,locate直接查找文件资料库,因此查找的速度就很快。

  可以使用 locate locate查看文件资料库。同时locate还有几个缺点,当新建一个文件时,使用locate命令查不到该文件,原因是系统还没有更新文件资料库,因此找不到该新建文件,你可以使用update手动更新。其次,当文件是在/tmp目录下创建的,使用locate命令也查找不到新建的文件,原因是:存放临时文件的目录/tmp并不在文件资料库的收录范围内,因此使用locate是不能查找到该目录下/tmp新建的文件的。

  使用locate locate 查看文件资料库

   新建一个文件,使用locate查看,在使用update更新文件资料库,在使用locate查看

   在目录/tmp下创建文件,使用locat 查找,发现查找不了

   使用locate查找文件,不区分大小写 locate -i 文件名(Linux中严格区分大小写)

2.which:搜索命令所在目录及其别名信息

  which 命令

  which是相对更精确的查找命令,比如查找的文件是一个命令(可执行文件),使用which就可以精准的查找到该命令的目录(命令所在位置的据对路径)。

   在Linux中,命令是以二进制的文件存储的,存储于bin和sbin下,bin下的命令所有用户都能执行,而sbin下的命令只能管理员root才能执行。

3.whereis:搜索命令所在目录及其帮助文档路径

  whereis [命令名称]

4.grep:在文件中搜寻字符串匹配行并显示

  -i 不区分大小写

  -v 排除指定字符串

grep在文件内容中进行查找,把想要查找的包含关键词的那一行显示出来。

   使用参数 -i ,查找时不区分关键词的大小写

  grep -i  关键词 文件的据绝对路径

  grep -i right /root/test/hello.txt

  查找文件hello.txt内容中包含right的行并显示(不区分大小写)

   排除指定字符串

  grep -v today is sunny sunny 

   当我们看一个文件时,若注释的内容很多,我们只想查看没有注释的内容。既可以用方向查找的思想 -v 来实现。

  先准备数据:

   grep -v ^# 文件绝对路径

  grep -v ^# /root/test/sunny

  ^# 把以#开头的行排除

   

你可能想把包含#的行去掉,但是这样是执行失败的

   如文本内容中的 today is sunny # the weather condition ,若grep -v # sunny执行成功,那么意味着这一行数据也要被删除,但实际上,这一行数据对我们是有用的,该行后的数据#the weather condition是对today is sunny的解释说明,并不意味着这一行数据都是注释,因此grep -v # sunny是不能执行成功的。

  把参数-i,-v连接起来用

  grep -iv today sunny

  把文件sunny里包含today大小写的关键词排除,并显示剩余的内容

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值