Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
AWS CLI-Skeletons und Eingabedateien in der AWS CLI
Die meisten der AWS CLI-Befehle akzeptieren das Importieren von Parametereingaben aus einer Datei. Diese Vorlagen können mit der Option generate-cli-skeleton generiert und dann mit den Parametern --cli-input-json und--cli-input-yaml importiert werden.
Themen
Informationen zu AWS CLI-Skeletons und Eingabedateien
Die meisten Befehle der AWS Command Line Interface (AWS CLI) unterstützen die Möglichkeit, Parametereingaben aus einer Datei mit den Parametern --cli-input-json und --cli-input-yaml zu akzeptieren.
Dieselben Befehle nutzen den Parameter --generate-cli-skeleton zum Generieren einer Datei im JSON- oder YAML-Format mit allen Parametern, die Sie bearbeiten und füllen können. Anschließend können Sie den Befehl mit dem Parameter --cli-input-json oder --cli-input-yaml ausführen und auf die gefüllte Datei zeigen.
Wichtig
Benutzerdefinierte AWS CLI-Befehle wie die aws s3-Befehle bieten keine Unterstützung für die in diesem Thema beschriebenen Parameter --generate-cli-skeleton oder --cli-input-json und --cli-input-yaml. Um zu überprüfen, ob ein bestimmter Befehl diese Parameter unterstützt, führen Sie den help-Befehl für den Befehl aus, den Sie verwenden möchten, oder schlagen Sie im Referenzhandbuch zu AWS CLI Version 2 nach.
Mit dem Befehl --generate-cli-skeleton wird eine Parametervorlage generiert und angezeigt, die Sie anpassen und als Eingabe für einen Befehl verwenden können. Die generierte Vorlage enthält alle Parameter, die der Befehl unterstützt.
Der --generate-cli-skeleton-Parameter akzeptiert einen der folgenden Werte:
-
input– Die generierte Vorlage enthält alle Eingabeparameter, die als JSON formatiert sind. Dies ist der Standardwert. -
yaml-input– Die generierte Vorlage enthält alle Eingabeparameter, die als YAML formatiert sind. -
output– Die generierte Vorlage enthält alle Ausgabeparameter, die als JSON formatiert sind. Sie können die Ausgabeparameter derzeit nicht als YAML anfordern.
Da es sich bei der AWS CLI im Grunde um einen „Wrapper“ für die API des Service handelt, erwartet die Skeleton-Datei, dass Sie alle Parameter anhand des zugrunde liegenden API-Parameternamens referenzieren. Dieser unterscheidet sich wahrscheinlich vom AWS CLI-Parameternamen. Beispielsweise kann ein AWS CLI-Parameter mit dem Namen user-name dem API-Parameter des AWS-Service mit dem Namen UserName zugeordnet werden (beachten Sie hierbei die geänderte Groß- und Kleinschreibung und den fehlenden Bindestrich). Wir empfehlen, die Option --generate-cli-skeleton zu verwenden, um die Vorlage mit den „richtigen“ Parameternamen zu generieren und so Fehler zu vermeiden. Sie können das API-Referenzhandbuch zum Service nutzen, um die erwarteten Parameternamen anzuzeigen. Sie können alle Parameter aus der Vorlage löschen, die nicht erforderlich sind und für die Sie keinen Wert angeben möchten.
Wenn Sie beispielsweise den folgenden Befehl ausführen, wird die Parametervorlage für den Amazon-Elastic-Compute-Cloud (Amazon EC2)-Befehl run-instances generiert.
Generieren und Importieren eines Befehls-Skeletons
So generieren und verwenden Sie eine Parameter-Skeleton-Datei
-
Führen Sie den Befehl mit dem
--generate-cli-skeleton-Parameter aus, um entweder JSON oder YAML zu erzeugen, und leiten Sie die Ausgabe an eine Datei, um sie zu speichern. -
Öffnen Sie die Parameter-Skeleton-Datei in Ihrem Texteditor und entfernen Sie alle Parameter, die Sie nicht benötigen. Beispielsweise können Sie die Vorlage auf Folgendes beschränken. Stellen Sie sicher, dass die Datei noch immer das gültige JSON- oder YAML-Format aufweist, nachdem Sie die Elemente entfernt haben, die Sie nicht benötigen.
In diesem Beispiel lassen wir den
DryRun-Parameter auftrueeingestellt, um die Amazon-EC2-DryRun-Funktion zu verwenden. Mit dieser Funktion können Sie den Befehl sicher testen, ohne tatsächlich Ressourcen zu erstellen oder zu ändern. -
Füllen Sie den Rest mit Werten auf, die sich für Ihr Szenario eignen. In diesem Beispiel stellen wir den Instance-Typ, den Schlüsselnamen, die Sicherheitsgruppe und die ID des zu verwendenden Amazon Machine Image (AMI) bereit. In diesem Beispiel wird davon ausgegangen, dass die standardmäßige AWS-Region verwendet wird. Das AMI
ami-dfc39aefist ein 64-Bit-Amazon-Linux-Image, das in der Regionus-west-2gehostet ist. Wenn Sie eine andere Region verwenden, müssen Sie die richtige AMI-ID finden. -
Führen Sie den Befehl mit den abgeschlossenen Parametern aus, indem Sie die fertige Vorlagendatei mit dem
--cli-input-json-Präfix an den Parametercli-input-yamloder den Parameterfile://übergeben. In der AWS CLI wird der Pfad als relativ zum aktuellen Arbeitsverzeichnis interpretiert. Im folgenden Beispiel wird in der AWS CLI nach der Datei im aktuellen Arbeitsverzeichnis gesucht.Die Probelauf-Fehlermeldung gibt an, dass der JSON- oder YAML-Code korrekt formatiert wird und die Parameterwerte gültig sind. Wenn andere Probleme in der Ausgabe gemeldet werden, beheben Sie sie und wiederholen Sie den vorherigen Schritt, bis die Meldung „
Request would have succeeded“ angezeigt wird. -
Jetzt können Sie den Parameter
DryRunauffalsesetzen, um den Probelauf zu deaktivieren. -
Führen Sie den Befehl aus.
run-instancesstartet eine Amazon-EC2-Instance und zeigt die Details an, die durch den erfolgreichen Start generiert wurden. Das Format der Ausgabe wird vom--output-Parameter unabhängig vom Format Ihrer Eingabeparametervorlage gesteuert.
Kombinieren von Eingabedateien und Befehlszeilenparametern
Eine Eingabedatei kann für alle Parameter verwendet oder mit den in der AWS CLI angegebenen Parametern kombiniert werden. Sie können diese Funktion für Einstellungen verwenden, die Sie häufig in einer Eingabedatei wiederverwenden, während Sie Ihre individuellen Einstellungen im Befehl selbst beibehalten.
In den folgenden Beispielen für aws ec2 run-instances wird die Verwendung einer Eingabedatei mit Parametern kombiniert. In diesem Beispiel stellen wir den Instance-Typ, den Schlüsselnamen, die Sicherheitsgruppe und die ID des zu verwendenden Amazon Machine Image (AMI) bereit und gehen von der standardmäßigen AWS-Region aus. Das AMI ami-dfc39aef ist ein 64-Bit-Amazon-Linux-Image, das in der Region us-west-2 gehostet ist. Wenn Sie eine andere Region verwenden, müssen Sie die richtige AMI-ID finden
Im folgenden Beispiel wird anhand der Eingabedatei in Kombination mit dem Parameter --dry-run ein Probelauf des Befehls durchgeführt, um zu überprüfen, ob Sie über die erforderlichen Berechtigungen verfügen und die Datei mit gültigen Werten ausgefüllt haben.
Im folgenden Beispiel wird dann dieselbe Eingabedatei, jedoch mit dem Parameter --no-dry-run verwendet, um den Befehl vollständig auszuführen.