Questa documentazione è valida AWS CLI solo per la versione 1. Per la documentazione relativa alla versione 2 di AWS CLI, consulta la Guida per l'utente della versione 2.
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à.
Skeleton e file di input della AWS CLI nella AWS CLI
La maggior parte dei comandi della AWS CLI accetta l’importazione di input di parametri da un file. Questi modelli possono essere generati utilizzando l’opzione generate-cli-skeleton e quindi importati utilizzando i parametri --cli-input-json.
Argomenti
Informazioni sugli skeleton e sui file di input della AWS CLI
La maggior parte dei comandi di AWS Command Line Interface (AWS CLI) consente di accettare tutti gli input di parametri da un file utilizzando i parametri --cli-input-json.
Questi stessi comandi utilizzano il parametro --generate-cli-skeleton per generare un file in formato JSON con tutti i parametri che può essere modificato e compilato. Quindi puoi eseguire il comando con il parametro --cli-input-json e scegliere il file compilato.
Importante
I comandi della AWS CLI personalizzati, come i comandi aws s3 non supportano né --generate-cli-skeleton né --cli-input-json descritti in questo argomento. Per verificare se un comando specifico supporta questi parametri, esegui il comando help relativo al comando che desideri utilizzare o consulta la AWS CLI version 1 reference guide.
Il comando --generate-cli-skeleton genera e visualizza un modello di parametri che è possibile personalizzare e utilizzare come input per un comando. Il modello generato include tutti i parametri supportati dal comando.
Il parametro --generate-cli-skeleton accetta uno dei seguenti valori:
-
input- Il modello generato include tutti i parametri di input formattati come JSON. Si tratta del valore di default. -
output- Il modello generato include tutti i parametri di output formattati come JSON..
Poiché l'AWS CLI è essenzialmente un "wrapper" per l'API del servizio, il file di skeleton prevede che tu faccia riferimento a tutti i parametri in base ai nomi del parametro API sottostanti. Questo è probabilmente diverso dal nome del parametro AWS CLI. Ad esempio, un parametro AWS CLI denominato user-name potrebbe essere mappato al parametro API del servizio AWS denominato UserName (nota le maiuscole e il trattino mancante). Ti consigliamo di utilizzare l'opzione --generate-cli-skeleton per generare il modello con i nomi di parametro "corretti" per evitare errori. Puoi fare riferimento alla Guida di riferimento delle API per il servizio per visualizzare i nomi dei parametri previsti. Puoi eliminare dal modello tutti i parametri che non sono obbligatori e per i quali non desideri fornire un valore.
Ad esempio, se esegui questo comando, viene generato il modello di parametri per il comando run-instances di Amazon Elastic Compute Cloud (Amazon EC2).
Generazione e importazione di uno skeleton di comandi
Per generare e utilizzare un file scheletro dei parametri
-
Eseguire il comando con il parametro
--generate-cli-skeletonper produrre JSON e indirizzare l’output a un file per salvarlo. -
Apri il file scheletro dei parametri nell'editor di testo e rimuovi qualsiasi parametro non necessario. Ad esempio, è possibile eliminare il modello fino al seguente. Conferma che il file sia ancora nel formato JSON valido dopo aver rimosso gli elementi non necessari.
In questo esempio, il parametro
DryRunviene lasciato impostato sutrueper utilizzare la funzionalità di test EC2. Questa funzione consente di testare in modo sicuro il comando senza creare o modificare effettivamente alcuna risorsa. -
Compila i valori rimanenti con valori appropriati per il tuo scenario. In questo esempio, forniamo il tipo di istanza, il nome della chiave, il gruppo di sicurezza e l'identificatore dell'Amazon Machine Image (AMI) da utilizzare. Questo esempio prevede l’utilizzo della Regione AWS. L’AMI
ami-dfc39aefè un’immagine a 64 bit Amazon Linux ospitata nella Regioneus-west-2. Se utilizzi un'altra regione, devi trovare l'ID AMI corretto da utilizzare. -
Eseguire il comando con i parametri completati passando il file modello completato al parametro
--cli-input-jsonutilizzando il prefissofile://. La AWS CLI interpreta il percorso come relativo alla directory di lavoro corrente. L’esempio AWS CLI seguente cerca il file nella directory di lavoro corrente.L’errore in fase di test indica che la formattazione del JSON è corretta e i valori dei parametri sono validi. Se nell'output vengono segnalati altri problemi, correggerli e ripetere la fase precedente fino a quando non viene visualizzato il messaggio"
Request would have succeeded". -
Ora puoi impostare il parametro
DryRunsufalseper disabilitare il test. -
Eseguire il comando, e
run-instancesavvia effettivamente un’istanza Amazon EC2 e visualizza tutte le informazioni generate dal lancio corretto. Il formato dell'output è controllato dal parametro--output, separatamente dal formato del modello di parametro di input.
Combinazione di file di input e parametri della riga di comando
Un file di input può essere utilizzato per tutti i parametri o può essere combinato con i parametri specificati in AWS CLI. È possibile utilizzare questa funzionalità per le impostazioni che si riutilizzano frequentemente in un file di input, mantenendo le impostazioni individuali nel comando stesso.
Negli esempi seguenti aws ec2 run-instances combinano l’uso di un file di input e di parametri. Forniamo il tipo di istanza, il nome della chiave, il gruppo di sicurezza, l’identificatore dell’Amazon Machine Image (AMI) da utilizzare e assegniamo la Regione AWS predefinita. L’AMI ami-dfc39aef è un’immagine a 64 bit Amazon Linux ospitata nella Regione us-west-2. Se utilizzi un'altra regione, devi trovare l'ID AMI corretto da utilizzare
L’esempio seguente utilizza il file di input in combinazione con il parametro --dry-run per eseguire una prova del comando per confermare se si dispone delle autorizzazioni richieste e se il file è stato compilato con valori validi.
L’esempio seguente utilizza quindi lo stesso file di input, ma con il parametro --no-dry-run per eseguire il comando per intero.