简述

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 配置内容所找到的命令当然不一样的!