这个问题通常发生在使用反引号或$()语法时。在这种情况下,传递的命令可能被解释为字符串而不是可执行命令。我们可以使用eval命令来解决这个问题。eval允许执行传递的字符串作为命令。
以下是一个例子:
#!/bin/bash command="echo hello" eval "${command}"
在这个例子中,我们将命令作为字符串分配给变量'command”,并使用eval来执行该字符串作为命令。输出将是'hello”。
上一篇:Bash脚本停止/永远不会完成,没有任何错误消息。
下一篇:Bash脚本通过命令替换调用失败不会停止父脚本。