我似乎遇到了一些 shell 脚本(尤其是 ZSH)的问题,其中 shell 无法理解带有空格的导出。该问题仅在使用 `runcommand` 或 $(runcommand) 时发生。
测试用例:
# Works fine:
export test1="a b c"
# Does not work:
$(echo 'export test2="a b c"')
该错误类似于export:4: not valid in this context: c"
. 在空格和/或引号之前添加 1-2 \
-escapes 可能会将错误消息更改为export:4: not valid in this context: b\
.
可能有人能洞察问题是什么?谢谢你。
(我这样做的原因是允许python通过动态生成在.myshellrc中运行的代码来设置shell变量;如果有人知道更优雅的方法来做到这一点,那将非常欢迎作为评论。谢谢你。)编辑:为了澄清,我正在寻找一种方法来完成上述工作,或者另一种方法来允许外部脚本决定要导出的内容。
(*叹气*,我希望这不是 4.3.12 中特定于版本的问题......我认为这在过去可能有效。)