fish-shell/doc_src/alias.txt

36 lines
1.4 KiB
Plaintext
Raw Normal View History

\section alias alias - create a function
\subsection alias-synopsis Synopsis
2014-08-01 20:25:41 +08:00
\fish{synopsis}
2016-10-30 04:57:05 +08:00
alias
alias NAME DEFINITION
alias NAME=DEFINITION
\endfish
\subsection alias-description Description
`alias` is a simple wrapper for the `function` builtin, which creates a function wrapping a command. It has similar syntax to POSIX shell `alias`. For other uses, it is recommended to define a <a href='#function'>function</a>.
`fish` marks functions that have been created by `alias` by including the command used to create them in the function description. You can list `alias`-created functions by running `alias` without arguments. They must be erased using `functions -e`.
- `NAME` is the name of the alias
- `DEFINITION` is the actual command to execute. The string `$argv` will be appended.
You cannot create an alias to a function with the same name. Note that spaces need to be escaped in the call to `alias` just like at the command line, _even inside quoted parts_.
\subsection alias-example Example
The following code will create `rmi`, which runs `rm` with additional arguments on every invocation.
\fish
2016-10-30 04:57:05 +08:00
alias rmi="rm -i"
# This is equivalent to entering the following function:
2016-10-30 04:57:05 +08:00
function rmi --wraps rm --description 'alias rmi=rm -i'
rm -i $argv
end
# This needs to have the spaces escaped or "Chrome.app..." will be seen as an argument to "/Applications/Google":
alias chrome='/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome banana'
\endfish