我正在尝试运行包含字符串变量中的字符串变量的命令:
$ X="bash -c 'echo OK'" ; $X
OK': -c: line 1: unexpected EOF while looking for matching `''
为什么不起作用?如何正确修复/做它?
请注意,我需要将命令运行为$X
.
请注意,我需要echo OK
通过运行bash -c
。
我正在尝试运行包含字符串变量中的字符串变量的命令:
$ X="bash -c 'echo OK'" ; $X
OK': -c: line 1: unexpected EOF while looking for matching `''
为什么不起作用?如何正确修复/做它?
请注意,我需要将命令运行为$X
.
请注意,我需要echo OK
通过运行bash -c
。
因为它尝试运行名为
bash -c 'echo OK'
eval $X
会工作帖子 如何运行存储在变量中的命令?包含ilkkachu 的 很长的 答案 ,它以非常彻底的方式讨论了这个问题。
我将在这里引用这个优秀的答案。