mirror of
https://github.com/fish-shell/fish-shell.git
synced 2024-11-23 10:43:32 +08:00
54d1d98e39
And document how that stuff works. Fixes #2220 Also, the string stuff is cool.
41 lines
1.2 KiB
Plaintext
41 lines
1.2 KiB
Plaintext
\section alias alias - create a function
|
|
|
|
\subsection alias-synopsis Synopsis
|
|
\fish{synopsis}
|
|
alias NAME DEFINITION
|
|
alias NAME=DEFINITION
|
|
\endfish
|
|
|
|
\subsection alias-description Description
|
|
|
|
`alias` is a simple wrapper for the `function` builtin. It exists for backwards compatibility with Posix shells. For other uses, it is recommended to define a <a href='#function'>function</a>.
|
|
|
|
`fish` does not keep track of which functions have been defined using `alias`. 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 in the commandline _even inside the quotes_.
|
|
|
|
|
|
\subsection alias-example Example
|
|
|
|
The following code will create `rmi`, which runs `rm` with additional arguments on every invocation.
|
|
|
|
\fish
|
|
alias rmi "rm -i"
|
|
|
|
# This is equivalent to entering the following function:
|
|
|
|
function rmi
|
|
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
|