fexec
fexec
Execute a command or function, bypassing the usual order of precedence.
Description
fexec
allows you to execute a command or function, bypassing the usual order of precedence.
Usage
fexec: flag command [ parameters... ] -> `<stdout>`
Examples
fexec: private /source/builtin/autocomplete.alias
Flags
builtin
Execute a Murex builtinfunction
Execute a Murex public functionhelp
Display help messageprivate
Execute a Murex private function
Detail
Order of precedence
There is an order of precedence for which commands are looked up:
runmode
: this is executed before the rest of the script. It is invoked by the pre-compiler forking process and is required to sit at the top of any scripts.test
andpipe
functions also alter the behavior of the compiler and thus are executed ahead of any scripts.private functions - defined via
private
. Private's cannot be global and are scoped only to the module or source that defined them. For example, You cannot call a private function directly from the interactive command line (however you can force an indirect call viafexec
).Aliases - defined via
alias
. All aliases are global.Murex functions - defined via
function
. All functions are global.Variables (dollar prefixed) which are declared via
global
,set
orlet
. Also environmental variables too, declared viaexport
.globbing: however this only applies for commands executed in the interactive shell.
Murex builtins.
External executable files
You can override this order of precedence via the fexec
and exec
builtins.
Compatibility with POSIX
For compatibility with traditional shells like Bash and Zsh, builtin
is an alias to `fexec builtin
Synonyms
fexec
builtin
See Also
alias
: Create an alias for a commandautocomplete
: Set definitions for tab-completion in the command linebg
: Run processes in the backgroundbuiltins
: Returns runtime information on the internal state of Murexevent
: Event driven programming for shell scriptsexec
: Runs an executablefg
: Sends a background process into the foregroundfunction
: Define a function blockjobs
: Lists all running functions within the current Murex sessionopen
: Open a file with a preferred handlerprivate
: Define a private function blocksource
: Import Murex code from another file of code block