aboutsummaryrefslogtreecommitdiffhomepage
path: root/doc_src/and.txt
blob: ed56da62dd9c8ed98165ae124313ba033209255b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
\section and and - conditionally execute a command

\subsection and-synopsis Synopsis
\fish{synopsis}
COMMAND1; and COMMAND2
\endfish

\subsection and-description Description

`and` is used to execute a command if the current exit status (as set by the previous command) is 0.

`and` statements may be used as part of the condition in an <a href="#if">`if`</a> or <a href="#while">`while`</a> block. See the documentation for <a href="#if">`if`</a> and <a href="#while">`while`</a> for examples.

`and` does not change the current exit status. 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.

\subsection and-example Example

The following code runs the `make` command to build a program. If the build succeeds, `make`'s exit status is 0, and the program is installed. If either step fails, the exit status is 1, and `make clean` is run, which removes the files created by the build process.

\fish
make; and make install; or make clean
\endfish