mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-12-12 08:33:45 +08:00
38b24c2325
This makes it so we link to the very top of the document instead of a special anchor we manually include. So clicking e.g. :doc:`string <cmds/string>` will link you to cmds/string.html instead of cmds/string.html#cmd-string. I would love to have a way to say "this document from the root of the document path", but that doesn't appear to work, I tried `/cmds/string`. So we'll just have to use cmds/string in normal documents and plain `string` from other commands.
38 lines
1.1 KiB
ReStructuredText
38 lines
1.1 KiB
ReStructuredText
.. _cmd-and:
|
|
|
|
and - conditionally execute a command
|
|
=====================================
|
|
|
|
Synopsis
|
|
--------
|
|
|
|
.. synopsis::
|
|
|
|
PREVIOUS; and COMMAND
|
|
|
|
Description
|
|
-----------
|
|
|
|
``and`` is used to execute a command if the previous command was successful (returned a status of 0).
|
|
|
|
``and`` statements may be used as part of the condition in an :doc:`while <while>` or :doc:`if <if>` block.
|
|
|
|
``and`` does not change the current exit status itself, but the command it runs most likely will. The exit status of the last foreground command to exit can always be accessed using the :ref:`$status <variables-status>` variable.
|
|
|
|
The **-h** or **--help** option displays help about using this command.
|
|
|
|
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.
|
|
|
|
::
|
|
|
|
make; and make install; or make clean
|
|
|
|
See Also
|
|
--------
|
|
|
|
- :doc:`or <or>` command
|
|
- :doc:`not <not>` command
|