SSH期望与变量的命令

By simon at 2018-02-07 • 0人收藏 • 39人看过

我打算从文件中取代密码而不是传递参数给 脚本

set cmd1 {`cat passwdfile.txt | grep -w pj |  cut -d";" -f5`}
spawn ssh username@servername

expect "password: "
send "$cmd1\r"
expect "$ "
send "ps -ef |grep planning1\r"
expect "$ "
send "exit\r"
错误
    username@servername's password:
    Permission denied, please try again.
为什么是n从文件中取得密码?

1 个回复 | 最后更新于 2018-02-07
2018-02-07   #1

在ssh要求输入密码的地方,您无法访问a 壳,所以反斜杠和所有其余的将是森像普通人物一样 密码。 假设您的本地机器上存在该文件,请在您之前获取密码 产卵:

set pw [exec grep -w pj passwdfile.txt | cut -d\; -f5]
spawn ssh ...
expect "password: "
send "$pw\r"
以纯文本存储密码当然是非常不安全的。你应该 设置ssh键让你登录不必输入密码。

登录后方可回帖

Loading...