

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Creazione e utilizzo di alias in AWS CLI
<a name="cli-usage-alias"></a>

Gli alias sono scorciatoie che è possibile creare in AWS Command Line Interface (AWS CLI) per abbreviare i comandi o gli script utilizzati di frequente. Gli alias vengono creati nel file `alias` che si trova nella cartella di configurazione.

**Topics**
+ [Prerequisiti](#cli-usage-alias-prepreqs)
+ [Fase 1: creazione del file alias](#cli-usage-alias-create-file)
+ [Fase 2: creazione di un alias](#cli-usage-alias-create-alias)
+ [Fase 3: chiamata di un alias](#cli-usage-alias-call-alias)
+ [Esempi di repository di alias](#cli-usage-alias-examples)
+ [Resources](#cli-usage-alias-references)

## Prerequisiti
<a name="cli-usage-alias-prepreqs"></a>

Per utilizzare i comandi alias, è necessario completare quanto segue:
+ Istalla e configura la AWS CLI. Per ulteriori informazioni, consultare [Installazione o aggiornamento alla versione più recente di AWS CLI](getting-started-install.md) e [Credenziali di autenticazione e accesso per AWS CLI](cli-chap-authentication.md).
+ Utilizzate una AWS CLI versione minima di 1.11.24 o 2.0.0.
+ (Facoltativo) Per utilizzare gli AWS CLI alias degli script bash, è necessario utilizzare un terminale compatibile con bash.

## Fase 1: creazione del file alias
<a name="cli-usage-alias-create-file"></a>

Per creare il `alias` file, è possibile utilizzare la navigazione dei file e un editor di testo oppure utilizzare il terminale preferito utilizzando la procedura. step-by-step Per creare rapidamente il file alias, usa il seguente blocco di comandi.

------
#### [ Linux and macOS ]

```
$ mkdir -p ~/.aws/cli
$ echo '[toplevel]' > ~/.aws/cli/alias
```

------
#### [ Windows ]

```
C:\> md %USERPROFILE%\.aws\cli
C:\> echo [toplevel] > %USERPROFILE%/.aws/cli/alias
```

------

**Per creare il file alias**

1. Create una cartella denominata `cli` nella cartella AWS CLI di configurazione. Per impostazione predefinita, la cartella di configurazione è `~/.aws/` su Linux o macOS e `%USERPROFILE%\.aws\` su Windows. Puoi crearlo tramite la navigazione dei file o utilizzando il comando seguente.

------
#### [ Linux and macOS ]

   ```
   $ mkdir -p ~/.aws/cli
   ```

------
#### [ Windows ]

   ```
   C:\> md %USERPROFILE%\.aws\cli
   ```

------

   Il percorso predefinito della cartella `cli` risultante è `~/.aws/cli/` su Linux o macOS e `%USERPROFILE%\.aws\cli` su Windows.

1. Nella cartella `cli`, crea un file di testo denominato `alias` senza estensione e aggiungi `[toplevel]` alla prima riga. È possibile creare questo file tramite l’editor di testo preferito o utilizzare il seguente comando.

------
#### [ Linux and macOS ]

   ```
   $ echo '[toplevel]' > ~/.aws/cli/alias
   ```

------
#### [ Windows ]

   ```
   C:\> echo [toplevel] > %USERPROFILE%/.aws/cli/alias
   ```

------

## Fase 2: creazione di un alias
<a name="cli-usage-alias-create-alias"></a>

Puoi creare un alias usando comandi di base o script Bash.

### Creazione di un alias di comando di base
<a name="cli-usage-alias-create-alias-basic"></a>

Puoi creare il codice alias aggiungendo un comando con la sintassi seguente nel file `alias` creato nella fase precedente. 

**Sintassi**

```
aliasname = command [--options]
```

*aliasname*È quello che chiami il tuo alias. Il *command* è il comando che vuoi chiamare, che può includere altri alias. È possibile includere opzioni o parametri nell’alias o aggiungerli quando si chiama l’alias.

L’esempio seguente crea un alias denominato `aws whoami` utilizzando il comando [https://docs.aws.amazon.com/cli/latest/reference/sts/get-caller-identity.html](https://docs.aws.amazon.com/cli/latest/reference/sts/get-caller-identity.html). Poiché questo alias richiama un comando della AWS CLI esistente, è possibile scrivere il comando senza il prefisso `aws`.

```
whoami = sts get-caller-identity
```

L’esempio seguente riprende l’esempio `whoami` precedente e aggiunge le opzioni di filtro `Account` e testo `output`.

```
whoami2 = sts get-caller-identity --query Account --output text
```

### Creazione di un alias di sottocomando
<a name="cli-usage-alias-create-alias-sub-command"></a>

**Nota**  
La funzionalità degli alias dei sottocomandi richiede una AWS CLI versione minima di 1.11.24 o 2.0.0

È possibile creare un alias per i sottocomandi aggiungendo un comando utilizzando la seguente sintassi nel file `alias` creato nella fase precedente. 

**Sintassi**

```
[command commandGroup]
aliasname = command [--options]
```

*commandGroup*è lo spazio dei nomi del comando, ad esempio il comando è incluso nel gruppo di comandi. `aws ec2 describe-regions` `ec2` *aliasname*Questo è quello che chiami il tuo alias. Il *command* è il comando che vuoi chiamare, che può includere altri alias. È possibile includere opzioni o parametri nell’alias o aggiungerli quando si chiama l’alias.

L’esempio seguente crea un alias denominato `aws ec2 regions` utilizzando il comando [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-regions.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-regions.html). Poiché questo alias richiama un comando AWS CLI esistente sotto il namespace del comando `ec2`, è possibile scrivere il comando senza il prefisso `aws ec2`.

```
[command ec2]
regions = describe-regions --query Regions[].RegionName
```

Per creare alias da comandi esterni al namespace dei comandi, aggiungi un punto esclamativo al comando completo. L’esempio seguente crea un alias denominato `aws ec2 instance-profiles` utilizzando il comando [https://docs.aws.amazon.com/cli/latest/reference/iam/list-instance-profiles.html](https://docs.aws.amazon.com/cli/latest/reference/iam/list-instance-profiles.html).

```
[command ec2]
instance-profiles = !aws iam list-instance-profiles
```

**Nota**  
Gli alias utilizzano solo gli spazi dei namespace esistenti e non è possibile crearne di nuovi. Ad esempio, non è possibile creare un alias con la sezione `[command johnsmith]` poiché il namespace del comando `johnsmith` non esiste già.

### Creare un alias di scripting Bash
<a name="cli-usage-alias-create-alias-scripting"></a>

**avvertimento**  
Per utilizzare AWS CLI gli alias bash, è necessario utilizzare un terminale compatibile con bash

È possibile creare un alias utilizzando gli script Bash per processi più avanzati utilizzando la seguente sintassi.

**Sintassi**

```
aliasname = 
    !f() {
        script content
}; f
```

*aliasname*È ciò che chiamate il vostro alias ed *script content* è lo script che volete eseguire quando chiamate l'alias.

L’esempio seguente utilizza `opendns` per visualizzare l’indirizzo IP corrente. Poiché è possibile utilizzare alias in altri alias, il seguente alias `myip` è utile per consentire o revocare l’accesso all’indirizzo IP dall’interno di altri alias. 

```
myip =
  !f() {
    dig +short myip.opendns.com @resolver1.opendns.com
  }; f
```

Il seguente esempio di script chiama l’alias `aws myip` precedente per autorizzare il tuo indirizzo IP all’ingresso di un gruppo di sicurezza Amazon EC2.

```
authorize-my-ip =
  !f() {
    ip=$(aws myip)
    aws ec2 authorize-security-group-ingress --group-id ${1} --cidr $ip/32 --protocol tcp --port 22
  }; f
```

Quando chiami degli alias che utilizzano lo scripting Bash, le variabili vengono sempre passate nell’ordine in cui le hai inserite. Nello scripting Bash, i nomi delle variabili non vengono presi in considerazione, ma solo l’ordine in cui appaiono. Nel seguente esempio di alias `textalert`, la variabile per l’opzione `--message` è la prima e l’opzione `--phone-number` è la seconda.

```
textalert =
  !f() {
    aws sns publish --message "${1}" --phone-number ${2}
  }; f
```

## Fase 3: chiamata di un alias
<a name="cli-usage-alias-call-alias"></a>

Per eseguire l’alias creato nel file `alias`, utilizza la seguente sintassi. Puoi aggiungere opzioni aggiuntive quando chiami il tuo alias.

**Sintassi**

```
$ aws aliasname
```

Il seguente esempio utilizza il comando alias `aws whoami`.

```
$ aws whoami
{
    "UserId": "A12BCD34E5FGHI6JKLM",
    "Account": "1234567890987",
    "Arn": "arn:aws:iam::1234567890987:user/userName"
}
```

L’esempio seguente utilizza l’alias `aws whoami` con opzioni aggiuntive per restituire solo il numero di `Account` nell’output `text`.

```
$ aws whoami --query Account --output text
1234567890987
```

L’esempio seguente utilizza [l’alias del sottocomando](#cli-usage-alias-create-alias-sub-command) `aws ec2 regions`.

```
$ aws ec2 regions
[
    "ap-south-1",
    "eu-north-1",
    "eu-west-3",
    "eu-west-2",
...
```

### Chiamare un alias usando variabili di scripting Bash
<a name="cli-usage-alias-call-alias-variables"></a>

Quando chiami degli alias che utilizzano lo scripting Bash, le variabili vengono passate nell’ordine in sono state inserite. Nello scripting Bash, i nomi delle variabili non vengono presi in considerazione, ma solo l’ordine in cui appaiono. Ad esempio, nel seguente alias `textalert`, la variabile per l’opzione `--message` è la prima e `--phone-number` è la seconda.

```
textalert =
  !f() {
    aws sns publish --message "${1}" --phone-number ${2}
  }; f
```

Quando chiami l’alias `textalert`, è necessario passare le variabili nello stesso ordine in cui vengono eseguite nell’alias. Nell’esempio seguente utilizziamo le variabili `$message` e `$phone`. La variabile `$message` viene passata come `${1}` per l’opzione `--message` e la variabile `$phone` viene passata come `${2}` per l’opzione `--phone-number`. Ciò comporta la corretta chiamata all’alias `textalert` per inviare un messaggio.

```
$ aws textalert $message $phone
{
    "MessageId": "1ab2cd3e4-fg56-7h89-i01j-2klmn34567"
}
```

Nell’esempio seguente, l’ordine viene cambiato quando chiami l’alias in `$phone` e`$message`. La variabile `$phone` viene passata come `${1}` per l’opzione `--message` e la variabile `$message` viene passata come `${2}` per l’opzione `--phone-number`. Poiché le variabili non sono ordinate, l’alias le passa in modo errato. Ciò causa un errore perché il contenuto di `$message` non corrisponde ai requisiti di formattazione del numero di telefono per l’opzione `--phone-number`.

```
$ aws textalert $phone $message
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:

  aws help
  aws <command> help
  aws <command> <subcommand> help

Unknown options: text
```

## Esempi di repository di alias
<a name="cli-usage-alias-examples"></a>

Il [repository di AWS CLI alias *GitHub*](https://github.com/awslabs/awscli-aliases)contiene esempi di AWS CLI alias creati dal team di sviluppatori e dalla AWS CLI community. Puoi utilizzare l’intero esempio di file `alias` o utilizzare singoli alias per il tuo uso personale.

**avvertimento**  
L’esecuzione dei comandi in questa sezione elimina il file esistente `alias`. Per evitare di sovrascrivere il file alias esistente, modifica la posizione di download.

**Per utilizzare gli alias del repository**

1. Installa Git. Per le istruzioni di installazione, consulta [Getting Started - Installing Git](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git) nella *documentazione di Git*.

1. Installa il comando `jp`. Il comando `jp` viene utilizzato nell’alias `tostring`. Per le istruzioni di installazione, consultate il file [JMESPath (jp](https://github.com/jmespath/jp)) README.md su. *GitHub*

1. Installa il comando `jq`. Il comando `jq` viene utilizzato nell’alias `tostring-with-jq`. Per le istruzioni di installazione, vedete il [processore JSON (jq](https://stedolan.github.io/jq/download/)) acceso. *GitHub*

1. Scarica il file `alias` in uno dei seguenti modi:
   + Esegui i seguenti comandi che vengono scaricati dal repository e copia il file `alias` nella cartella di configurazione.

------
#### [ Linux and macOS ]

     ```
     $ git clone https://github.com/awslabs/awscli-aliases.git
     $ mkdir -p ~/.aws/cli
     $ cp awscli-aliases/alias ~/.aws/cli/alias
     ```

------
#### [ Windows ]

     ```
     C:\> git clone https://github.com/awslabs/awscli-aliases.git
     C:\> md %USERPROFILE%\.aws\cli
     C:\> copy awscli-aliases\alias %USERPROFILE%\.aws\cli
     ```

------
   + Scaricatelo direttamente dal repository e salvatelo nella `cli` cartella di configurazione AWS CLI . Per impostazione predefinita, la cartella di configurazione è `~/.aws/` su Linux o macOS e `%USERPROFILE%\.aws\` su Windows. 

1. Per verificare che gli alias funzionino, esegui il seguente alias.

   ```
   $ aws whoami
   ```

   Viene visualizzata la stessa risposta del comando `aws sts get-caller-identity`:

   ```
   {
       "Account": "012345678901",
       "UserId": "AIUAINBADX2VEG2TC6HD6",
       "Arn": "arn:aws:iam::012345678901:user/myuser"
   }
   ```

## Resources
<a name="cli-usage-alias-references"></a>
+ Il [repository di AWS CLI alias *GitHub*](https://github.com/awslabs/awscli-aliases)contiene esempi di AWS CLI alias creati dal team di AWS CLI sviluppatori e dal contributo della community. AWS CLI 
+ L'annuncio della funzionalità alias tratto da [AWS re:Invent](https://www.youtube.com/watch?t=1590&v=Xc1dHtWa9-Q) 2016: The Effective User on. AWS CLI *YouTube* 
+ [https://docs.aws.amazon.com/cli/latest/reference/sts/get-caller-identity.html](https://docs.aws.amazon.com/cli/latest/reference/sts/get-caller-identity.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html)
+ [https://docs.aws.amazon.com/cli/latest/reference/sns/publish.html](https://docs.aws.amazon.com/cli/latest/reference/sns/publish.html)