Shell - How to find directory of some command?

前端 未结 7 899
既然无缘
既然无缘 2020-12-04 06:56

I know that when you are on shell, the only commands that can be used are the ones that can be found on some directory set on PATH. Even I don\'t know how to see what dirs a

7条回答
  •  离开以前
    2020-12-04 07:12

    If you're using Bash or zsh, use this:

    type -a lshw
    

    This will show whether the target is a builtin, a function, an alias or an external executable. If the latter, it will show each place it appears in your PATH.

    bash$ type -a lshw
    lshw is /usr/bin/lshw
    bash$ type -a ls
    ls is aliased to `ls --color=auto'
    ls is /bin/ls
    bash$ zsh
    zsh% type -a which
    which is a shell builtin
    which is /usr/bin/which
    

    In Bash, for functions type -a will also display the function definition. You can use declare -f functionname to do the same thing (you have to use that for zsh, since type -a doesn't).

提交回复
热议问题