mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-12-01 15:14:26 +08:00
b435fc4539
Specifically point towards the necessary splitting (as always, separate ahead of time) and the keyword thing. Fixes #9797
44 lines
1.4 KiB
ReStructuredText
44 lines
1.4 KiB
ReStructuredText
.. _cmd-command:
|
|
|
|
command - run a program
|
|
=======================
|
|
|
|
Synopsis
|
|
--------
|
|
|
|
.. synopsis::
|
|
|
|
command [OPTIONS] [COMMANDNAME [ARG ...]]
|
|
|
|
Description
|
|
-----------
|
|
|
|
**command** forces the shell to execute the program *COMMANDNAME* and ignore any functions or builtins with the same name.
|
|
|
|
In ``command foo``, ``command`` is a keyword.
|
|
|
|
The following options are available:
|
|
|
|
**-a** or **--all**
|
|
Prints all *COMMAND* found in :envvar:`PATH`, in the order found.
|
|
|
|
**-q** or **--query**
|
|
Silence output and print nothing, setting only exit status.
|
|
Implies **--search**.
|
|
For compatibility, this is also **--quiet** (deprecated).
|
|
|
|
**-v** (or **-s** or **--search**)
|
|
Prints the external command that would be executed, or prints nothing if no file with the specified name could be found in :envvar:`PATH`.
|
|
|
|
**-h** or **--help**
|
|
Displays help about using this command.
|
|
|
|
With the **-v** option, ``command`` treats every argument as a separate command to look up and sets the exit status to 0 if any of the specified commands were found, or 127 if no commands could be found. **--quiet** used with **-v** prevents commands being printed, like ``type -q``.
|
|
|
|
Examples
|
|
--------
|
|
|
|
| ``command ls`` executes the ``ls`` program, even if an ``ls`` function also exists.
|
|
| ``command -s ls`` prints the path to the ``ls`` program.
|
|
| ``command -q git; and command git log`` runs ``git log`` only if ``git`` exists.
|