Linux中的文件查找技巧

前言

Linux常用命令中,有些命令可以帮助我们查找二进制文件,帮助手册或源文件的位置,也有的命令可以帮助我们查找磁盘上的任意文件,今天我们就来看看这些命令如何使用。

witch

witch命令会在PATH变量指定的路径中,搜索某个系统命令的位置。例如:

which -a which  #查看命令which所在位置,-a参数表示找出所有
/usr/bin/which
/bin/which

PATH变量有哪些内容呢?我们来看一下(不同电脑可能不同):

echo $PATH
/home/hyb/bin:/home/hyb/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin

PATH环境变量存放着一些路径信息,例如/usr/bin,当你在shell终端敲入一个命令,但是在PATH中包含的路径下没有时并且也不是内置命令时,就会提示:command not found。

当你已经安装了一个命令,但是使用时却提示找不到该命令,可以查看该环境变量,是否有你安装命令的路径。

所以是不是明白了为什么有些命令或程序需要添加环境变量才能直接使用了吧?

whereis

whereis命令用于搜索程序的二进制文件,源代码文件或帮助文档。例如:

whereis ls  #如果上述三者有,则三者都会显示。
ls: /bin/ls /usr/share/man/man1/ls.1.gz

whereis -m ls #只查看ls的帮助手册
ls: /usr/share/man/man1/ls.1.gz

whereis -b ls #只查找ls的二进制文件
ls: /bin/ls

whereis stdio.h #查找stdio.h头文件,和帮助手册
stdio: /usr/include/stdio.h /usr/share/man/man3/stdio.3.gz

同样地,它不能查找到内置命令。

type

type用于查看命令类型,一般有以下类型:

alias:别名
keyword:关键字
builtin:内置命令
file:外部命令

而常见参数如下:

-t 输出类型名,如file
-p 如果是外部命令,则显示其所在路径
-a 对于外部命令,它会显示命令路径,命令类型等信息

我们来看几个例子:

ty
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值