murex Shell Docs

Command Reference: exec

Runs an executable

Description

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

Usage

<stdin> -> exec
<stdin> -> exec -> <stdout>
           exec -> <stdout>

Examples

» exec printf "Hello, world!"
Hello, world!

Detail

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 that is literally how murex handles any programs that aren't native to murex.

See Also

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 Thu May 26 22:49:43 UTC 2022 against commit 59e27bb59e27bb1013043fc4a940cf9a2767c63f31dad2c.

Current version is 2.8.2100 which has been verified against 15889 tests cases.