我的想法是把JSON字符串變量JSON,我有誰需要一個控制檯登錄到用戶在AWS IAM的COMAND是一個命令:aws iam create-login-profile --cli-input-json file://create-login-profile.json
猛砸JSON字符串變量
。 JSON是JSON以下內容:
{
"UserName": "roberto.viquezzz",
"Password": "aaaaaaaaaaa",
"PasswordResetRequired": true}
我嘗試寫bash腳本其中包含JSON VAR 「JSON」 像下面的代碼:
JSON="{\"UserName\": \"roberto.viquezzz\",\"Password\": \"aaaaaaaaaaa\",\"PasswordResetRequired\" : true}"
aws iam create-login-profile --cli-input-json $JSON
,如果我在利弊型ole ./file.sh該文件執行創建一個控制檯用戶。 如果試圖執行此代碼我得到一個錯誤:Unknown options: "aaaaaaaaaaa","PasswordResetRequired", :, true}, "roberto.viquezzz","Password":
,但如果我從喜歡命令行中執行以下代碼:
aws iam create-login-profile --cli-input-json "{\"UserName\": \"roberto.viquezzz\",\"Password\": \"aaaaaaaaaaa\",\"PasswordResetRequired\": true}"
一切都沒事,也許誰知道什麼是錯?請建議!大約$ JSON
總是在bash中使用雙引號。否則,其值(空格,換行符等)中的所有討厭字符都被解釋爲將字符串拆分爲多個參數。 – Alfe
除非您有一些要在內部展開的變量,否則不需要雙引號。只需使用單引號'jsonVar ='{「UserName」:「roberto.viquezzz」,; 「密碼」:「aaaaaaaaaaa」,; 「PasswordResetRequired」:true}';回聲「$ {jsonVar}」' – Inian
@Inian他仍然需要引用它。除非他在變量的值內添加單引號。 – neuhaus