如何使用本地参数运行远程bash脚本

时间:2014-12-13 01:52:40

标签: linux bash shell scripting

我刚接触shell脚本并遇到一些麻烦。

我试图从本地计算机执行远程脚本。本地机器上的脚本传递了四个参数,它执行以下行:

ssh $STACK 'bash -l -c "./deploy_intermediate.sh $2 $3 $4"'

然而,我不能得到$ 2,$ 3和$ 4来推出传递的参数。有没有办法在单引号内访问它们?执行上述行的最佳方法是什么。

我真的很感激任何帮助。

感谢。

2 个答案:

答案 0 :(得分:1)

要传递您必须写的参数:

ssh $STACK 'bash -l -c "./deploy_intermediate.sh '$2 $3 $4'"'

因此,您可以为$i值进行扩展。然而,我认为你可能只需运行就可以得到相同的结果:

ssh $STACK "./deploy_intermediate.sh $2 $3 $4"

答案 1 :(得分:1)

诀窍是:

ssh -i ~/.ssh/$GIT_PRIVKEY user@$IP "bash -s" < localpath/script.sh $arg1 $arg2