linux下的文件查找——type whereis which find locate

1.type命令


用途说明:

   type命令用来显示指定命令的类型。一个命令的类型可以是如下之一

  • alias 别名
  • keyword 关键字,Shell保留字
  • function 函数,Shell函数
  • builtin 内建命令,Shell内建命令
  • file 文件,磁盘文件,外部命令
  • unfound 没有找到

它是Linux系统的一种自省机制,知道了是那种类型,我们就可以针对性的获取帮助。比如内建命令可以用help命令来获取帮助,外部命令用man或者info来获取帮助。

常用参数

type命令的基本使用方式就是直接跟上命令名字。

type  -a可以显示所有可能的类型,比如有些命令如pwd是shell内建命令,也可以是外部命令。

type  -p只返回外部命令的信息,相当于which命令。

type  -f只返回shell函数的信息。

type  -t 只返回指定类型的信息。

Type:类似于which,快,但是只能用用语bash环境


2.whereis


Whereis:找出可执行文档、程序等等(只能找系统规定的某些文件路径,找到的是系统命令和内建命令,man文档等等的位置)

whereis命令会在指定的目录中查找符合条件的文件,文件应的属性应属于原始代码,二进制文件,或是帮助文件。优点是快速,可以找到脚本和普通文件,因为是数据库存储的,但是往往能找到已经删掉的文件不能找到刚刚创建的文件。Find虽然准确,但是相对缓慢。另外locate命令也有相同的效果,不过也有同样的问题,可以使用updatedb来更新数据库。


3.Find:查找并处理特定文件


FindDIR(目录) EXP(搜索条件)ACTION(动作)

-name pattern找出名称、路径名称、符号

-type   f|d|l|b|c|p|s只搜普通文件、目录、符号连接、块设备、字符设备、具名管道、或者socketl

Find / -name boot -type d:查找/下面boot文件夹

查找当前目录下面的最大文件:

find -type f -exec stat -c "%s %n" {} \; | sort -nr | head -1

注意:-exec选项的应用

注意:『』最好用单引号括起来,避免特殊符号被shell解析,另外,分号表示命令的终结,与前面有空格隔开

4.Locate


5.Which:查找特定的可执行文件,指明它的位置(从PATH中寻找)


Which

语  法:which[文件...]

补充说明:which指令会在环境变量$PATH设置的目录里查找符合条件的文件。即查找的是二进制可执行文件。

 -n<文件名长度> 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。

 -p<文件名长度> 与-n参数相同,但此处的<文件名长度>包括了文件的路径。

 -w 指定输出时栏位的宽度。

 -V 显示版本信息


6.常见错误的原因


1)我们在某个用户下面输入某个命令,如果出现“command not found”,那么一个很有可能的原因就是,该命令的二进制可执行文件不在该用户的环境变脸之内,此时将这个可执行程序的位置添加到PATH变量中即可

2)当我们用zpt-get命令安装了某个文件之后,又下载源码自定义安装了相关程序,此时在终端中调用这个程序,却发现仍然运行的是老的版本而不是我们自己编译安装的版本:这是因为老版本的程序所在位置在PATH变量中比较靠前,所以会优先调用。

解决方法:(1)删除老的程序(2)直接利用绝对路径指定需要调用的程序(3)启用程序别名功能

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值