2017-09-27 93 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