When running a command from terminal, how can I know the full path of the command?
Assuming I'm writing in Terminal: 'ctags', how can I know the full path of the command 'ctags?
$ type ctags
ctags is /usr/bin/ctags
$ type -p ctags
/usr/bin/ctags
The second form is useful for doing things like
$ file $(type -p ctags)
$ ls -l $(type -p ctags)
and is often aliased to which
.
If you don't want to rely on bash
functionality and prefer an external command, /usr/bin/whereis
serves a similar purpose:
The whereis utility checks the standard binary directories for the specified programs, printing out the paths of any it finds.
Because whereis
doesn't use $PATH
but rather the result of sysctl user.cs_path
it may lead to different results.
Type the command as a parameter, for e.g. to find location of tar
ls -l $(which tar)
which in my case returns
lrwxr-xr-x 1 root wheel 6 Jul 26 2012 /usr/bin/tar -> bsdtar