【发布时间】:2012-07-19 08:50:09
【问题描述】:
我正在尝试在 perl 中创建一个脚本,该脚本可以 ssh 到多个主机(500+),执行所需的命令,并在屏幕上显示输出。我已经使用 Net::OpenSSH 模块完成了这项工作,因为 ssh-keys 没有配置,我也不允许配置这些。所以,我必须使用一个可以在做 ssh 时提供密码的东西。
由于连接很多,做这件事需要相当长的时间。我搜索了“perl 中的并行 ssh”,发现有一个用于打开并行 ssh 的模块(Net::OpenSSH:Parallel),但我在某些论坛上的某个地方读到,我无法使用该模块捕获输出,就像我可以使用 Net 捕获一样::OpenSSH ($ssh->caputre(ls))。
那么,我怎样才能以更方便的方式完成并行 ssh?另外,我欢迎任何其他可以用来节省时间的建议。在线程中使用 Net:OpenSSH 会节省我的时间还是会像并行一样工作?
【问题讨论】:
-
Net::OpenSSH::Parallel 允许您将输出保存到本地文件系统中。然后你可以从你的脚本中重新阅读和处理它。
标签: perl