2017-09-27 88 views
0

我想從我的linux機器上運行一個bash腳本。它應該連接到F5負載平衡器並在負載平衡器上運行一組命令。F5負載平衡器交互

工作命令用於連接F5:

sshpass -p "password" ssh [email protected] 

bash腳本,我想:

#!/bin/bash 

sshpass -p "password" ssh [email protected] 

modify /ltm pool poolA_8080 members modify { 10.32.76.21:8080 { session user- 
disabled state user-down } } 

如果我從我的Linux機器上運行此腳本時,它會在F5但'修改'命令沒有得到執行。

回答

0

如果我理解這個權利,ssh後面會有一個換行符。嘗試以下操作:

#!/bin/bash 

sshpass -p "password" ssh [email protected] \ 
"modify /ltm pool poolA_8080 members modify { 10.32.76.21:8080 { session user-disabled state user-down } }" 

在一個側面說明,存儲密碼的腳本是不是因爲它們很容易泄露一個好主意。更好地使用基於密鑰的ssh登錄。

+0

謝謝smbear。我根據你的建議做了改變,它起作用了。我已修改爲提示用戶名和密碼。 – SenthilNathan

+0

想要在sshpass命令 – SenthilNathan

+0

'man bash'後理解'\'的用法:「非引號反斜槓(\\)是轉義字符,它保留下一個字符的字面值, 。如果出現\ 對,並且反斜槓不是自引用的,則將\ 視爲一個續行(即從輸入流中刪除並有效忽略)。「 – smbear