mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-27 11:43:37 +08:00
1287b9d823
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.
50 lines
1.2 KiB
Plaintext
50 lines
1.2 KiB
Plaintext
\section begin begin - start a new block of code
|
|
|
|
\subsection begin-synopsis Synopsis
|
|
<tt>begin; [COMMANDS...;] end</tt>
|
|
|
|
\subsection begin-description Description
|
|
|
|
\c begin is used to create a new block of code.
|
|
|
|
The block
|
|
is unconditionally executed. <code>begin; ...; end</tt> is equivalent
|
|
to <tt>if true; ...; end</tt>.
|
|
|
|
\c begin is used to group a number of commands into a block.
|
|
This allows the introduction of a new variable scope, redirection of the input or
|
|
output of a set of commands as a group, or to specify precedence when
|
|
using the conditional commands like \c and.
|
|
|
|
\c begin does not change the current exit status.
|
|
|
|
\subsection begin-example Example
|
|
|
|
The following code sets a number of variables inside of a block
|
|
scope. Since the variables are set inside the block and have local
|
|
scope, they will be automatically deleted when the block ends.
|
|
|
|
<pre>
|
|
begin
|
|
set -l PIRATE Yarrr
|
|
...
|
|
end
|
|
# This will not output anything, since the PIRATE variable went out
|
|
# of scope at the end of the block
|
|
echo $PIRATE
|
|
</pre>
|
|
|
|
In the following code, all output is redirected to the file out.html.
|
|
|
|
<pre>
|
|
begin
|
|
echo $xml_header
|
|
echo $html_header
|
|
if test -e $file
|
|
...
|
|
end
|
|
...
|
|
|
|
end > out.html
|
|
</pre>
|