尝试运行在 for 循环内的变量中定义的命令:
somevar="Bit of text"
cmd1="command \"search '$somevar' here\""
cmd2="command \"search '$somevar' there\""
for cmd in cmd1 cmd2 ; do
eval \$$cmd
ssh server1 eval \$$cmd
done
我已经放入了我必须考虑的变体,例如循环内的 ssh 等,因为这些在我的脚本中是必需的。我认为 eval 是正确的方向,但是命令中的引号被解释的方式是错误的。