猛砸JSON字符串变量
问题描述:
我的想法是把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