簡體   English   中英

aws ssm 發送命令不適用於特殊字符

[英]aws ssm send-command not working with special characters

我能夠向我的一些 Amazon ec2 實例發送簡單的命令。 例如:

aws ssm send-command --document-name "AWS-RunShellScript" --instance-ids "${instanceid}" --parameters commands=["cd /home/ec2-user","mkdir -p test"]
aws ssm send-command --document-name "AWS-RunShellScript" --instance-ids "${instanceid}" --parameters commands=["cd /home/ec2-user","sudo chmod 777 test"]

我還可以將文本回顯到示例文件:

aws ssm send-command --document-name "AWS-RunShellScript" --instance-ids "${instanceid}" --parameters commands=["cd /home/ec2-user","echo thisvalue = temp >> test/sample.txt"]

但是,如果我使用括號作為命令/文本的一部分,例如:

aws ssm send-command --document-name "AWS-RunShellScript" --instance-ids "${instanceid}" --parameters commands=["cd /home/ec2-user","echo [default] > test/sample.txt"]

我收到以下錯誤:

解析參數“--parameters”時出錯:預期:“,”,接收到:“>”用於輸入:

當文本被括在括號 [] 中時,就會引發問題。 因此,問題歸結為:我如何能夠通過 aws ssm 發送命令 function 傳遞“特殊”字符?

解決方案是:

aws ssm send-command --document-name "AWS-RunShellScript" --instance-ids "${instanceid}" --parameters commands='["cd /home/ec2-user","echo [\default\] > test/sample.txt"]'

換句話說,在命令選項周圍加上單引號並正確地轉義括號。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM