作者: 一去、二三里
个人微信号: iwaleon
微信公众号: 高效程序员
which 命令用于查找并显示给定命令的绝对路径,环境变量 PATH 中保存了查找命令时需要遍历的目录。which 指令会在环境变量 $PATH 设置的目录里查找符合条件的文件。也就是说,使用 which 命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
命令介绍
-
命令名称
which -
基本语法
which [options] [–] COMMAND […] -
功能描述
查找并显示给定(shell)命令的绝对路径
命令选项
选项 | 说明 |
---|---|
--version, -[vV] | 显示版本信息并退出 |
--help | 显示帮助信息并退出 |
--skip-dot | 跳过 PATH 中以点开头的目录 |
--skip-tilde | 跳过 PATH 中以波形符号开头的目录 |
--show-dot | 不要在输出中将点扩展到当前目录 |
--show-tilde | 为 HOME 目录(非根目录)输出波形 |
--tty-only | 如果不在 tty 上,停止右边的处理选项 |
--all, -a | 打印 PATH 中的所有匹配项,而不仅仅是第一个 |
--read-alias, -i | 从 stdin 中读取别名列表 |
--skip-alias | 忽略选项 --read-alias ;不读 stdin |
--read-functions | 从 stdin 读取 shell 函数 |
--skip-functions | 忽略选项 --read-functions ;不读 stdin |
使用范例
1.显示命令路径
普通用户:
[wang@localhost ~]$ which pwd
/usr/bin/pwd
切换用户为 root:
[root@localhost ~]# which pwd
/bin/pwd
which 是根据使用者所配置的 PATH 变量内的目录去搜寻可运行档的。所以,不同的 PATH 配置内容所找到的命令当然不一样的!