![](/img/trans.png)
[英]how to write a bash shell script to ssh to remote machine and change user and export a env variable and do other commands
[英]How to do ssh in a bash script with lot of commands?
我試圖在bash腳本中運行以下命令,但是直到調用./install.sh rereplica為止。 其余命令完全不被調用。
ssh $node2user@$node2 "cd /tmp; tar -xf $mmCS.tar; cd $mmCS; ./install.sh csreplica; ./install.sh keepalived $vip low;./install.sh haproxy $node1:8080 $node2:8080 $vip:8080; ./install.sh confmongo $dbPath"
如果必須使用SSH執行復雜的腳本,通常會在本地編寫腳本,使用SSH將其復制到目標計算機上,然后在其中執行:
scp foo.sh $node2user@$node2:
ssh $node2user@$node2 "bash ./foo.sh"
這樣,我可以簡單地通過使用bash -x
調用腳本來調試腳本,並且可以使用BASH的全部功能。
或者,您可以使用
ssh $node2user@$node2 "set +x; cd /tmp; ..."
您可以在標准輸入上為ssh
提供腳本:
ssh $node2user@$node2 < my_script.sh
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.