Příkaz, který se má použít, se liší shell od shellu.
Pouze vestavěný shell řekne správně, co shell udělá pro daný název příkazu, protože pouze vestavěné mohou plně vědět o aliasech, funkcích shellu, dalších vestavěných a tak dále. Pamatujte:Ne všechny příkazy v první řadě odpovídají spustitelným souborům.
-  Pro shell Bourne Again, bash, vestavěný jetypepříkaz:$ type '[' [ is a shell builtin
-  Pro rybí skořápku fish,typevestavěný funguje podobně jako bash. Chcete-li získat pouze cestu ke spustitelnému souboru, použijtecommand -v:$ type cat cat is /bin/cat $ command -v cat /bin/cat
-  Pro Korn Shell, ksh, vestavěný jewhencepříkaz — stypepůvodně nastaven jako běžný alias prowhence -vacommandvestavěný s-vmožnost ekvivalentníwhence:$ whence -v ls ls is a tracked alias for /bin/ls
-  Pro Z Shell, zsh, vestavěný jewhencepomocí příkazucommandvestavěný s-vmožnost ekvivalentníwhencea vestavěnétype,whichawhereekvivalentníwhences možnostmi-v,-ca-carespektive.$ whence ls /bin/ls
-  Pro TC Shell, tcsh, vestavěný jewhichpříkaz — nezaměňovat s žádným externím příkazem s tímto názvem:> which ls ls: aliased to ls-F > which \ls /bin/ls
Další čtení
- https://unix.stackexchange.com/questions/85249/
 Můžete použít which pro toto:
[email protected]:~$ which ls
/bin/ls
 Funguje to tak, že vyhledáte PATH pro spustitelné soubory odpovídající názvům argumentů. Všimněte si, že nefunguje s aliasy shellu:
[email protected]:~$ alias listdir=/bin/ls
[email protected]:~$ listdir /
bin    dev   initrd.img      lib32   media  proc  selinux  tmp  vmlinuz
...
[email protected]:~$ which listdir
[email protected]:~$
 type , nicméně funguje:
[email protected]:~$ type listdir
listdir is aliased to `/bin/ls'
 which ne (nutně) vrátit spustitelný soubor. Vrátí první odpovídající název souboru najde v $PATH (nebo více podobných pojmenovaných souborů při použití which -a )... skutečný spustitelný soubor může být vzdálen několik odkazů. 
- which locate
 - /usr/bin/locate
 `
- file $(which locate)
 - /usr/bin/locate: symbolic link to /etc/alternatives/locate'
 Příkaz, který vyhledá aktuální spustitelný soubor je readlink -e , 
 (ve spojení s which ) 
- readlink -e $(which locate)
 - /usr/bin/mlocate
Chcete-li zobrazit všechny mezilehlé odkazy :
f="$(which locate)"             # find name in $PATH
printf "# %s\n" "$f"
while f="$(readlink "$f")" ;do  # follow links to executable
    printf "# %s\n" "$f"
done
# /usr/bin/locate
# /etc/alternatives/locate
# /usr/bin/mlocate