![Shell 命令执行(sh -c)未设置变量?](https://linux22.com/image/1533906/Shell%20%E5%91%BD%E4%BB%A4%E6%89%A7%E8%A1%8C%EF%BC%88sh%20-c%EF%BC%89%E6%9C%AA%E8%AE%BE%E7%BD%AE%E5%8F%98%E9%87%8F%EF%BC%9F.png)
当我执行时,/bin/sh -c "X=1;echo $X;"
它会打印空行。我做错了什么?如果有关系的话,我的平台是 macOS...
答案1
我想我已经回答了我的问题。变量似乎在sh -c
运行之前就被扩展了。所以我应该写/bin/sh -c "X=1; echo \$X;"
当我执行时,/bin/sh -c "X=1;echo $X;"
它会打印空行。我做错了什么?如果有关系的话,我的平台是 macOS...
我想我已经回答了我的问题。变量似乎在sh -c
运行之前就被扩展了。所以我应该写/bin/sh -c "X=1; echo \$X;"