zoukankan      html  css  js  c++  java
  • 每天一个linux命令(16):which

    1、命令简介

    which (which) 命令的作用是在PATH变量指定的路径中搜索某个系统命令的位置并且返回第一个搜索结果。也就是说使用which命令就可以看到某个系统命令是否存在以及执行的到底是哪一个位置的命令

    2、用法

    /usr/bin/which [options] [--] COMMAND [...]

    3、选项

      --version, -[vV]   显示版本信息
      --help,          显示帮助信息
      --skip-dot       Skip directories in PATH that start with a dot.
      --skip-tilde     Skip directories in PATH that start with a tilde.
      --show-dot       Don't expand a dot to current directory in output.
      --show-tilde     Output a tilde for HOME directory for non-root.
      --tty-only       Stop processing options on the right if not on tty.
      --all, -a        查找全部匹配的,而非第一个
      --read-alias, -i Read list of aliases from stdin.
      --skip-alias     Ignore option --read-alias; don't read stdin.
      --read-functions Read shell functions from stdin.
      --skip-functions Ignore option --read-functions; don't read stdin.

    4、示例

    示例1:查看默认的jdk
    [root@oracledb ~]# which java
    /usr/bin/java
    示例2:which查找的目录,PATH变量的值
    [root@oracledb ~]# echo $PATH
    /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
    实例3:查找有别名的命令时会列出具体的别名信息
    [root@oracledb ~]# which which
    alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'
        /usr/bin/which

    用 which 去找出 which,结果会有两个 which ,其中一个是 alias 这就是所谓的『命令别名』

    实例4:Bash内建命令无法查找到如cd命令
    [root@oracledb ~]# which cd
    /usr/bin/which: no cd in (/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin)

    cd 这个常用的命令找不到,这是因为 cd 是bash 内建的命令! 但是 which 默认是找 PATH 内所规范的目录,所以当然找不到!

  • 相关阅读:
    python实现的列表操作
    python的静态方法
    python标准库学习2
    javascript继承原型继承的例子
    jQuery高亮显示文本中重要的关键字
    表格展开伸缩
    jQuery设计思想
    python标准库学习3
    python中的继承和抽象类的实现
    表格的变色问题
  • 原文地址:https://www.cnblogs.com/xqzt/p/5426533.html
Copyright © 2011-2022 走看看