带有 $ 字符的环境变量

Spa*_*r0i 3 shell environment-variables quoting

我正在使用 MacOS。我试图在我的里面输入这个环境变量.bash_profile

export CLOUD_PASSWORD=Pass4Aa$ditya

但是当我这样做source .bash_profile并尝试时echo $CLOUD_PASSWORD,我将其作为输出: Pass4Aa

$ 符号之后的任何内容都将被忽略。即使我尝试添加引号,例如: export CLOUD_PASSWORD="Pass4Aa$ditya"

source后来做了,还是和以前一样。如何使用值中存在的特殊字符(如 $ 和 @)创建环境变量?

小智 18

$ export CLOUD_PASSWORD='Pass4Aa$ditya'
$ printf '%s\n' "$CLOUD_PASSWORD"

Pass4Aa$ditya

$ export CLOUD_PASSWORD="Pass4Aa\$ditya"
$ printf '%s\n' "$CLOUD_PASSWORD"

Pass4Aa$ditya
Run Code Online (Sandbox Code Playgroud)

单引号或用反斜杠转义 :)