我正在尝试在 ksh 文件中准备 JSON。我面临这个问题 - 我认为这是因为我不能正确使用牙套。示例:
RESULT="[";
COUNTRY=mCountry
LANGUAGE=mLang
AppendParams()
{
RESULT=$RESULT"{\"site:\"$COUNTRY\",\"lang\":\"$LANGUAGE\"}";
}
AppendParams
RESULT=$RESULT"]";
echo $RESULT;
输出是:
sh-4.3$ ksh main.ksh
["site:"mCountry"] ["lang":"mLang"]
代替
[{"site:"mCountry","lang":"mLang"}]
有没有办法禁用大括号或转义大括号?请帮忙。
最佳答案
当你回显或打印一个值可能包含大括号的变量时,双引号变量名,如“${VARIABLE}”,以避免大括号扩展。您也可以使用单引号来避免必须转义每个双引号。尝试:
AppendParams()
{
RESULT=${RESULT}'{"site:"'${COUNTRY}'","lang":'${LANGUAGE}'"}'
}
AppendParams
RESULT=$RESULT"]"
echo "$RESULT"
关于linux - ksh 中的转义括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45355177/