我知道,当你在shell上时,唯一可以使用的命令是那些可以在路径上的某个目录集上找到的命令.
我来到shell写下:
$ lshw
我想知道shell上的一个命令,它可以告诉我这个命令的位置.换句话说,这个"可执行文件"位于哪里?
比如:
$ location lshw
/usr/bin
任何人
我知道,当你在shell上时,唯一可以使用的命令是那些可以在路径上的某个目录集上找到的命令.
我来到shell写下:
$ lshw
我想知道shell上的一个命令,它可以告诉我这个命令的位置.换句话说,这个"可执行文件"位于哪里?
比如:
$ location lshw
/usr/bin
任何人
如果您使用的是Bash或zsh,请使用以下命令:
type -a lshw
这将显示目标是内置、函数、别名还是外部可执行文件.如果是后者,它将显示它出现在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
在Bash中,for functions type -a
还将显示函数定义.你可以用declare -f functionname
来做同样的事情(你必须用它来做zsh,因为type -a
不能).