用于传输文件的Shell脚本

时间:2016-04-22 05:02:59

标签: linux shell passwords transfer

我有一个shell脚本,它启动For循环,从带有主机名的文本文件中读取,并使用SCP将文件传输到每个主机。它非常有用,但处理密码提示的最佳方法是什么?我给服务器的唯一身份验证是用户名和密码。

截至目前,我必须为每台服务器输入密码。由于服务器数量很少,它已经成为可能,但我希望将来有更好的解决方案。任何帮助/建议都会很棒。

谢谢!

2 个答案:

答案 0 :(得分:1)

大多数服务器还支持publickey身份验证。在您的本地主机上Generate a keypair,然后将~/.ssh/id_rsa_pub复制到远程主机~/.ssh/authorized_keys(如果已存在,则附加到其中)。使用ssh-agent处理锁定密钥的关键短语。

答案 1 :(得分:0)

对于这种交互式操作,您可以使用Expect脚本。您可以轻松定义远程调用,您希望获得特定字符串(f.e“username:”),然后发送已知密码。