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.
Laden von Parametern aus einer Datei in AWS CLI
Einige Parameter erwarten Dateinamen als Argumente, aus denen die Daten AWS CLI geladen werden. Mit anderen Parametern können Sie den Parameterwert als Text angeben, der in die Befehlszeile eingegeben wird oder aus einer Datei gelesen wird. Unabhängig davon, ob eine Datei erforderlich oder optional ist, müssen Sie die Datei korrekt codieren, damit sie verstanden AWS CLI werden kann. Die Kodierung der Datei muss mit dem Standardgebietsschema des Lesesystems übereinstimmen. Sie können dies mithilfe der Python-Methode locale.getpreferredencoding()
bestimmen.
Anmerkung
Standardmäßig PowerShell gibt Windows Text als UTF -16 aus, was zu einem Konflikt mit der UTF -8-Kodierung führt, die von JSON Dateien und vielen Linux-Systemen verwendet wird. Wir empfehlen Ihnen, dies -Encoding ascii
zusammen mit Ihren PowerShell Out-File
Befehlen zu verwenden, um sicherzustellen, dass die resultierende AWS CLI Datei gelesen werden kann.
Laden von Parametern aus einer Datei
Manchmal ist es praktisch, einen Parameterwert aus einer Datei zu laden, anstatt zu versuchen, alles als Befehlszeilenparameterwert einzugeben, z. B. wenn es sich bei dem Parameter um eine komplexe JSON Zeichenfolge handelt. Um eine Datei anzugeben, die den Wert enthält, geben Sie eine Datei URL im folgenden Format an.
file://
complete/path/to/file
-
Die ersten beiden Schrägstriche "/" sind Teil der Spezifikation. Wenn der erforderliche Pfad mit einem "/" beginnt, besteht das Ergebnis aus drei Schrägstrichen:
file://
./folder/file
-
Das URL gibt den Pfad zu der Datei an, die den eigentlichen Parameterinhalt enthält.
-
Wenn Sie Dateien mit Leerzeichen oder Sonderzeichen verwenden, befolgen Sie die Anführungszeichen- und Escape-Regeln Ihres Terminals.
Die Dateipfade in den folgenden Beispielen werden als relativ zum aktuellen Arbeitsverzeichnis interpretiert.
Die Präfixoption file://
unterstützt Erweiterungen im Unix-Stil, einschließlich "~/
", "./
" und "../
". Unter Windows erfolgt mit dem Ausdruck "~/
" die Erweiterung zu Ihrem Benutzerverzeichnis, das in der Umgebungsvariablen %USERPROFILE%
gespeichert ist. Beispielsweise befindet sich das Benutzerverzeichnis in Windows 10 in der Regel unter C:\Users\
.UserName
\
JSONDokumente, die als Wert eines anderen JSON Dokuments eingebettet sind, müssen trotzdem maskiert werden.
$
aws sqs create-queue --queue-name my-queue --attributes
file://attributes.json
attributes.json
{ "RedrivePolicy": "{
\
"deadLetterTargetArn\
":\
"arn:aws:sqs:us-west-2:0123456789012:deadletter\
",\
"maxReceiveCount\
":\
"5\
"}" }
Binärdateien
Für Befehle, die Binärdaten als Parameter annehmen, geben Sie mit dem Präfix fileb://
an, dass es sich bei den Daten um binäre Inhalte handelt. Zu den Befehlen, die Binärdaten akzeptieren, zählen:
-
aws ec2 run-instances:
--user-data
-Parameter. -
aws s3api put-object:
--sse-customer-key
-Parameter. -
aws kms decrypt:
--ciphertext-blob
-Parameter.
Das folgende Beispiel generiert mithilfe eines Linux-Befehlszeilentools einen binären AES 256-Bit-Schlüssel und stellt ihn dann Amazon S3 zur serverseitigen Verschlüsselung einer hochgeladenen Datei zur Verfügung.
$
dd if=/dev/urandom bs=1 count=32 > sse.key
32+0 records in 32+0 records out 32 bytes (32 B) copied, 0.000164441 s, 195 kB/s
$
aws s3api put-object \ --bucket amzn-s3-demo-bucket \ --key test.txt \ --body test.txt \
--sse-customer-key fileb://sse.key
\ --sse-customer-algorithm AES256{ "SSECustomerKeyMD5": "iVg8oWa8sy714+FjtesrJg==", "SSECustomerAlgorithm": "AES256", "ETag": "\"a6118e84b76cf98bf04bbe14b6045c6c\"" }
Ein weiteres Beispiel, das auf eine Datei verweist, die Parameter im JSON -Format enthält, finden Sie unter. Einem Benutzer eine IAM verwaltete Richtlinie zuordnen