Linux 命令(90)—— which 命令

2019-11-12 16:43:37 浏览数 (1)

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/K346K346/article/details/102972794

1.命令简介

which 命令用于查看给定命令的绝对路径,从环境变量 PATH 指定的目录进行搜索。

2.命令格式

代码语言:javascript复制
which [options] [--] COMMAND [...]

which 可以有多个 COMMAND ,对于每个参数,它都将输出可执行程序的完整路径

3.选项说明

代码语言:javascript复制
--all, -a
	打印出所有在 PATH 中匹配的可执行程序,而不仅仅是第一个匹配的可执行程序
--read-alias, -i
	从 stdin 中读取别名列表
--skip-alias
	忽略选项 --read-alias
--read-functions
	从 stdin 读取 Shell 函数的定义,并打印匹配的函数
--skip-functions
	忽略选项 --read-functions
--skip-dot
	跳过环境变量 PATH 中以点开头的目录
--skip-tilde
	跳过环境变量 PATH 中以波浪号开头的目录和主目录中的可执行文件
--show-dot
	如果环境变量 PATH 中一个目录以一个点开始,并且在该目录下找到了一个匹配的可执行文件,那么打印 ./COMMAND 而不是完整的路径
--show-tilde
	为 HOME 目录输出波浪符。如果是 root 用户则忽略该选项
--tty-only
	如果不在 tty 上,停止处理右边的选项
--version, -v, -V
	显示版本信息并退出
--help
	显示帮助信息

4.常用示例

(1)查找命令所在路径。

代码语言:javascript复制
which passwd

/usr/bin/passwd

(2)一般情况下,which 是一个别称,可以查看 which 的详细定义。

代码语言:javascript复制
which which

alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
	/usr/bin/alias
	/usr/bin/which

也可以跳过别名,直接查看命令 which 的所在路径。

代码语言:javascript复制
which --skip-alias which

/usr/bin/which

(3)打印帮助信息。

代码语言:javascript复制
which --help

参考文献

[1] which manual

0 人点赞