Ich versuche, die Ausgabe von AWS cli
mit jq
wo die jq Abfrage enthält Bash Variablen zu analysieren und durch the --arg switch wie so mit:Wie aws-cli-Ausgabe mit jq, das Argumente enthält, mithilfe des Befehls -arg parsen?
$ aws ec2 describe-instances --region $region | jq --arg environment "$Environment" --arg br "$BUILD_NUMBER" --arg app "$App" -r '.Reservations[].Instances[].Tags[]?.Value | select(startswith("Company-$environment-$br-$app")
ich eine neue Zeile, wenn ich den Befehl ausführen.
Dies ist der Ausgang, wenn ich hart automatische Skalierung Gruppennamen codiert verwenden:
[email protected] ~/Downloads - $ aws ec2 describe-instances --region $region | jq --arg environment "$Environment" --arg br "$BUILD_NUMBER" --arg app "$App" -r '.Reservations[].Instances[].Tags[]?.Value | select(startswith("Company-Dev-60-Api"))'
Company-Dev-60-ApiServersASG-19L10K16RUXTE
Company-Dev-60-ApiServersASG-19L10K16RUXTE
[email protected] ~/Downloads - $
Sie können die Werte der Variablen sehen gesetzt sind:
[email protected] ~/Downloads - $ echo $Environment
Dev
[email protected] ~/Downloads - $ echo $App
Api
[email protected] ~/Downloads - $ echo $BUILD_NUMBER
60
Also, was mache ich falsch?