小编del*_*ard的帖子

在bash中从变量执行for循环中的命令

尝试在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
Run Code Online (Sandbox Code Playgroud)

我已经考虑了我必须考虑的变体,例如循环中的ssh等,因为我的脚本需要这些变体.我认为eval是正确的方向,但是命令中的引号被解释的方式是错误的.

variables bash shell loops eval

1
推荐指数
1
解决办法
7176
查看次数

标签 统计

bash ×1

eval ×1

loops ×1

shell ×1

variables ×1