2005-09-20 21:31:55 +08:00
\section while while - perform a command multiple times
\subsection while-synopsis Synopsis
2014-08-01 20:25:41 +08:00
\fish{synopsis}
2014-08-01 10:37:32 +08:00
while CONDITION; COMMANDS...; end
\endfish
2005-09-20 21:31:55 +08:00
2006-10-31 23:23:16 +08:00
\subsection while-description Description
Help cleanup
Large list of changes, including formatting and typos for most commands.
More substantive changes have been made to alias, bind, block, break,
builtin, case, cd, commandline, count, else, emit, fish_config, funced,
function, functions, history, math, mimedb, nextd, not, popd, prevd,
pushd, pwd, random, read, set, set_color, switch, test, trap, type,
ulimit, umask, and while.
2013-05-12 15:56:01 +08:00
2014-08-19 20:41:23 +08:00
`while` repeatedly executes `CONDITION`, and if the exit status is 0, then executes `COMMANDS`.
If the exit status of `CONDITION` is non-zero on the first iteration, `COMMANDS` will not be executed at all.
2016-05-25 07:22:44 +08:00
You can use <a href="#and">`and`</a> or <a href="#or">`or`</a> for complex conditions. Even more complex control can be achieved with `while true` containing a <a href="#break">break</a>.
2005-09-20 21:31:55 +08:00
\subsection while-example Example
2014-08-08 10:44:37 +08:00
\fish
2016-05-20 04:00:40 +08:00
while test -f foo.txt; or test -f bar.txt ; echo file exists; sleep 10; end
# outputs 'file exists' at 10 second intervals as long as the file foo.txt or bar.txt exists.
\endfish