exec
)Runs an executable
With Murex, like most other shells, you launch a process by calling the name of that executable directly. While this is suitable 99% of the time, occasionally you might run into an edge case where that wouldn’t work. The primary reason being if you needed to launch a process from a variable, eg
» set exe=uname
» $exe
uname
As you can see here, Murex’s behavior here is to output the contents of the variable rather then executing the contents of the variable. This is done for safety reasons, however if you wanted to override that behavior then you could prefix the variable with exec:
» set exe=uname
» exec $exe
Linux
<stdin> -> exec
<stdin> -> exec -> <stdout>
exec -> <stdout>
» exec printf "Hello, world!"
Hello, world!
If you have an alias like alias ls=ls --color=auto
and
you wanted to run ls
but without colour, you might run
exec ls
.
If any command doesn’t exist as a builtin, function nor alias, then
Murex will default to forking out to any command with this name (subject
to an absolute path or the order of precedence in $PATH
).
Any forked process will show up in both the operating systems process
viewer (eg ps
) but also Murex’s own process viewer,
fid-list
. However inside fid-list
you will
notice that all external processes are listed as exec
with
the process name as part of exec
’s parameters. That is
because exec
is handler for programs that aren’t native to
Murex.
For compatibility with traditional shells like Bash and Zsh,
command
is an alias for exec
.
exec
command
exec.file
bg
): Run processes in the backgroundbexists
): Check which builtins existset
):
Define a variable (typically local) and set it’s valuefid-list
): Lists all running functions within the
current Murex sessionjobs
): Lists all running functions within the current
Murex sessionfexec
): Execute a command or function, bypassing the
usual order of precedence.fg
): Sends a background process into the
foregroundfid-killall
): Terminate all running Murex functions in
current sessionfid-kill
): Terminate a running Murex functionbuiltins
): Returns runtime information on the internal
state of MurexThis document was generated from builtins/core/typemgmt/types_doc.yaml.
This site's content is rebuilt automatically from murex's source code after each merge to the master
branch. Downloadable murex binaries are also built with the website.
Last built on Wed Jan 15 23:07:50 UTC 2025 against commit b4c4296b4c429617fd41527ea0efef33c52c15ef2b64972.
Current version is 6.4.2063 (develop) which has been verified against tests cases.