2006-10-31 15:23:16 +00:00
\section or or - conditionally execute a command
2005-09-20 13:31:55 +00:00
\subsection or-synopsis Synopsis
2014-08-01 12:25:41 +00:00
\fish{synopsis}
2014-08-01 02:37:32 +00:00
COMMAND1; or COMMAND2
\endfish
2005-09-20 13:31:55 +00:00
\subsection or-description Description
2014-08-19 12:41:23 +00:00
`or` is used to execute a command if the current exit status (as set by the last previous command) is not 0.
2005-09-20 13:31:55 +00:00
2014-08-01 02:37:32 +00:00
`or` does not change the current exit status.
2006-06-03 23:15:17 +00:00
2014-08-19 12:41:23 +00:00
The exit status of the last foreground command to exit can always be accessed using the <a href="index.html#variables-status">$status</a> variable.
2006-11-02 13:47:25 +00:00
2005-09-20 13:31:55 +00:00
\subsection or-example Example
2014-08-19 12:41:23 +00:00
The following code runs the `make` command to build a program. If the build succeeds, the program is installed. If either step fails, `make clean` is run, which removes the files created by the build process.
2006-06-03 23:15:17 +00:00
2014-08-01 02:37:32 +00:00
\fish
2006-06-03 23:15:17 +00:00
make; and make install; or make clean
2014-08-01 02:37:32 +00:00
\endfish