Creazione e utilizzo di alias in AWS CLI
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.
Argomenti
Prerequisiti
Per utilizzare i comandi alias, è necessario completare quanto segue:
Istalla e configura la AWS CLI. Per ulteriori informazioni, consultare Installazione o aggiornamento dell’ultima versione di AWS CLI e Credenziali di autenticazione e accesso per la AWS CLI.
-
Utilizza una versione minima della AWS CLI di 1.11.24 o 2.0.0.
-
(Facoltativo) Per utilizzare gli script bash dell’alias della AWS CLI, è necessario utilizzare un terminale compatibile con bash.
Fase 1: creazione del file alias
Per creare il file alias, è possibile utilizzare la navigazione dei file e un editor di testo oppure il terminale preferito seguendo la procedura dettagliata. Per creare rapidamente il file alias, usa il seguente blocco di comandi.
Per creare il file alias
-
Crea una cartella denominata
clinella cartella di configurazione AWS CLI. 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.Il percorso predefinito della cartella
clirisultante è~/.aws/cli/su Linux o macOS e%USERPROFILE%\.aws\clisu Windows. -
Nella cartella
cli, crea un file di testo denominatoaliassenza estensione e aggiungi[toplevel]alla prima riga. È possibile creare questo file tramite l’editor di testo preferito o utilizzare il seguente comando.
Fase 2: creazione di un alias
Puoi creare un alias usando comandi di base o script Bash.
Creazione di un alias di comando di base
Puoi creare il codice alias aggiungendo un comando con la sintassi seguente nel file alias creato nella fase precedente.
Sintassi
[aliasname=command--options]
aliasname è chiamato alias. command è il comando da 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 aws sts
get-caller-identity. 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 --queryAccount--output text
Creazione di un alias di sottocomando
Nota
La funzionalità degli alias dei sottocomandi richiede una versione minima della AWS CLI 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
[commandcommandGroup][aliasname=command--options]
commandGroup è il namespace dei comandi, ad esempio il comando aws ec2 describe-regions si trova nel gruppo di comandi ec2. aliasname è chiamato alias. command è il comando da 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 aws ec2
describe-regions. 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 aws iam
list-instance-profiles.
[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
avvertimento
Per utilizzare gli script Bash dell’alias della AWS CLI, è 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
L’aliasname è ciò che chiami alias e il contenuto dello script è lo script che desideri eseguire quando chiami 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
Per eseguire l’alias creato nel file alias, utilizza la seguente sintassi. Puoi aggiungere opzioni aggiuntive quando chiami il tuo alias.
Sintassi
$awsaliasname
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 text1234567890987
L’esempio seguente utilizza l’alias del sottocomando 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
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 $messageusage: 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
Il repository di alias della AWS CLIalias o utilizzare singoli alias per 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
-
Installa Git. Per le istruzioni di installazione, consulta Getting Started - Installing Git
nella documentazione di Git. -
Installa il comando
jp. Il comandojpviene utilizzato nell’aliastostring. Per le istruzioni di installazione, consulta il file JMESPath (jp) README.mdsu GitHub. -
Installa il comando
jq. Il comandojqviene utilizzato nell’aliastostring-with-jq. Per le istruzioni di installazione, consulta JSON processor (jq)su GitHub. -
Scarica il file
aliasin uno dei seguenti modi:-
Esegui i seguenti comandi che vengono scaricati dal repository e copia il file
aliasnella cartella di configurazione. -
Scaricalo direttamente dal repository e salvalo nella cartella
clidella cartella di configurazione AWS CLI. Per impostazione predefinita, la cartella di configurazione è~/.aws/su Linux o macOS e%USERPROFILE%\.aws\su Windows.
-
-
Per verificare che gli alias funzionino, esegui il seguente alias.
$aws whoamiViene visualizzata la stessa risposta del comando
aws sts get-caller-identity:{ "Account": "012345678901", "UserId": "AIUAINBADX2VEG2TC6HD6", "Arn": "arn:aws:iam::012345678901:user/myuser" }
Risorse
-
Il repository di alias della AWS CLI
su GitHub contiene esempi di alias della AWS CLI creati dal team di sviluppatori della AWS CLI e dal contributo della community della AWS CLI. -
L’annuncio della funzionalità alias da AWS re:Invent 2016: The Effective AWS CLI User
su YouTube.