add new cli alias documentation
This commit is contained in:
parent
3dbcdea691
commit
1fc2129e0c
|
@ -0,0 +1,74 @@
|
|||
---
|
||||
layout: "docs"
|
||||
page_title: "Aliases - Command-Line Interface"
|
||||
sidebar_current: "cli-aliases"
|
||||
description: |-
|
||||
Custom Vagrant commands can be defined using aliases, allowing for a simpler,
|
||||
easier, and more familiar command line interface.
|
||||
---
|
||||
|
||||
# Aliases
|
||||
|
||||
Inspired in part by Git's own
|
||||
[alias functionality](https://git-scm.com/book/en/v2/Git-Basics-Git-Aliases),
|
||||
aliases make your Vagrant experience simpler, easier, and more familiar by
|
||||
allowing you to create your own custom Vagrant commands.
|
||||
|
||||
Aliases can be defined within `VAGRANT_HOME/aliases` file, or in a custom file
|
||||
defined using the `VAGRANT_ALIAS_FILE` environment variable, in the following
|
||||
format:
|
||||
|
||||
```
|
||||
# basic command-level aliases
|
||||
start = up
|
||||
stop = halt
|
||||
|
||||
# advanced command-line aliases
|
||||
eradicate = !vagrant destroy && rm -rf .vagrant
|
||||
```
|
||||
|
||||
In a nutshell, aliases are defined using a standard `key = value` format, where
|
||||
the `key` is the new Vagrant command, and the `value` is the aliased command.
|
||||
Using this format, there are two types of aliases that can be defined: internal
|
||||
and external aliases.
|
||||
|
||||
## Internal Aliases
|
||||
|
||||
Internal command aliases call the CLI class directly, allowing you to alias
|
||||
one Vagrant command to another Vagrant command. This technique can be very
|
||||
useful for creating commands that you think _should_ exist. For example,
|
||||
if `vagrant stop` feels more intuitive than `vagrant halt`, the following alias
|
||||
definitions would make that change possible:
|
||||
|
||||
```
|
||||
stop = halt
|
||||
```
|
||||
|
||||
This makes the following commands equivalent:
|
||||
|
||||
```
|
||||
vagrant stop
|
||||
vagrant halt
|
||||
```
|
||||
|
||||
## External Aliases
|
||||
|
||||
While internal aliases can be used to define more intuitive Vagrant commands,
|
||||
external command aliases are used to define Vagrant commands with brand new
|
||||
functionality. These aliases are prefixed with the `!` character, which
|
||||
indicates to the interpreter that the alias should be executed as a shell
|
||||
command. For example, let's say that you want to be able to view the processor
|
||||
and memory utilization of the active project's virtual machine. To do this, you
|
||||
could define a `vagrant metrics` command that returns the required information
|
||||
in an easy-to-read format, like so:
|
||||
|
||||
```
|
||||
metrics = !ps aux | grep "[V]BoxHeadless" | grep $(cat .vagrant/machines/default/virtualbox/id) | awk '{ printf("CPU: %.02f%%, Memory: %.02f%%", $3, $4) }'
|
||||
```
|
||||
|
||||
The above alias, from within the context of an active Vagrant project, would
|
||||
print the CPU and memory utilization directly to the console:
|
||||
|
||||
```
|
||||
CPU: 4.20%, Memory: 11.00%
|
||||
```
|
|
@ -14,6 +14,11 @@ Vagrant has a set of environmental variables that can be used to
|
|||
configure and control it in a global way. This page lists those environmental
|
||||
variables.
|
||||
|
||||
## `VAGRANT_ALIAS_FILE`
|
||||
|
||||
`VAGRANT_ALIAS_FILE` can be set to change the file where Vagrant aliases are
|
||||
defined. By default, this is set to `~/.vagrant.d/aliases`.
|
||||
|
||||
## `VAGRANT_DEBUG_LAUNCHER`
|
||||
|
||||
For performance reasons, especially for Windows users, Vagrant uses a static
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
<li<%= sidebar_current("cli-validate") %>><a href="/docs/cli/validate.html">validate</a></li>
|
||||
<li<%= sidebar_current("cli-version") %>><a href="/docs/cli/version.html">version</a></li>
|
||||
<li<%= sidebar_current("cli-nonprimary") %>><a href="/docs/cli/non-primary.html">More Commands</a></li>
|
||||
<li<%= sidebar_current("cli-aliases") %>><a href="/docs/cli/aliases.html">Aliases</a></li>
|
||||
<li<%= sidebar_current("cli-machinereadable") %>><a href="/docs/cli/machine-readable.html">Machine Readable Output</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
|
|
Loading…
Reference in New Issue