catchHandles the exception code raised by
tryortrypipe
catch is designed to be used in conjunction with
try and trypipe as it handles the exceptions
raised by the aforementioned.
[ try | trypipe ] { code-block } -> <stdout>
catch { code-block } -> <stdout>
!catch { code-block } -> <stdout>
try {
out "Hello, World!" -> grep: "non-existent string"
out "This command will be ignored"
}
catch {
out "An error was caught"
}
!catch {
out "No errors were raised"
}
catch can be used with a bang prefix to check for a lack
of errors.
catch forwards on the stdin and exit number of the
calling function.
catch!catchunsafe: Execute a block of code, always returning a
zero exit numberrunmode: Alter the scheduler’s behaviour at higher
scoping levelif:
Conditional statement to execute different blocks of code depending on
the result of the conditiontrypipe: Checks for non-zero exits of each function in
a pipelinetrypipeerr: Checks state of each function in a pipeline
and exits block on errortryerr: Handles errors inside a block of codeswitch: Blocks of cascading conditionalstry:
Handles non-zero exits inside a block of codeThis document was generated from builtins/core/structs/try_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 Dec 10 23:24:04 UTC 2025 against commit ec623f9ec623f9e05b9cd816d1c93e90c807e23ff173cd9.
Current version is 7.1.4143 (unknown) which has been verified against tests cases.