2016-11-11 158 views
0

我在嘗試ssh到每個主機運行一些命令後,它完成。第二個和第三個sshpass命令需要運行。但是,它只運行第一個命令,然後停止在第二個和第三個sshpass命令。這是我的示例腳本。 我把它稱爲是sshHostName.sh腳本,腳本包含在第一個sshpass被執行後無法執行sshpass命令

/usr/bin/sshpass -p 'myPassword' ssh [email protected] "echo 'hello1'" 
/usr/bin/sshpass -p 'myPassword' ssh [email protected] "echo 'hello2'" 
/usr/bin/sshpass -p 'myPassword' ssh [email protected] "echo 'hello3'" 

在這個例子中,我只看到hello1後,我跑./sshHostName.sh

如何運行的下一個(sshpass)命令一旦前一個完成?

謝謝。

+0

嘗試手動ssh三次,看看會發生什麼。這不太可能是sshpass的問題。無論哪種方式,沒有足夠的信息來幫助你。 –

回答

0

我想通了,我需要把這個選項有:-o StrictHostKeyChecking =無

/usr/bin/sshpass -p 'myPassword' ssh -o [email protected] "echo 'hello1'" 
/usr/bin/sshpass -p 'myPassword' ssh -o [email protected] "echo 'hello2'" 
/usr/bin/sshpass -p 'myPassword' ssh -o [email protected] "echo 'hello3'" 

所以這是工作!