Locate command origin
which locates a command's origin. If STDOUT is a TTY, then it's output will be human readable. If STDOUT is a pipe then it's output will be a simple list.
which can take multiple parameters, each representing a different command you want looked up.
which command... -> <stdout>
» which cat dog jobs git dug
cat => (/bin/cat) cat - concatenate and print files
dog => unknown
jobs => (alias) fid-list --jobs => (builtin) Lists all running functions within the current Murex session
git => (/opt/homebrew/bin/git -> ../Cellar/git/2.41.0/bin/git) git - the stupid content tracker
dug => (murex function) A bit like dig but which outputs JSON
» which cat dog jobs git dug -> cat
There are a few different types of commands:
This will be represented in
type by the term alias and, when STDOUT is a TTY,
which will follow the alias to print what command the alias points to.
This is a Murex function (defined via
function) and will be represented in
type by the term function.
This is a private function (defined via
private) and will be represented in
type by the term private.
This is a shell builtin, like
exit. It will be represented in
type by the term builtin.
This is any other external command, such as
python. This will be represented in
which by the path to the executable. When STDOUT is a TTY,
which will also print the destination path of any symlinks too.
type, it is represented by the term executable.
alias: Create an alias for a command
exec: Runs an executable
exit: Exit murex
fexec: Execute a command or function, bypassing the usual order of precedence.
function: Define a function block
out: Print a string to the STDOUT with a trailing new line character
type: Command type (function, builtin, alias, etc)
This document was generated from builtins/core/management/which_doc.yaml.