【问题标题】:How to automatically supply input to prompt when running linux ksh script?运行linux ksh脚本时如何自动提供输入提示?
【发布时间】:2010-05-21 02:59:38
【问题描述】:

我目前有一个脚本可以通过 ssh 连接到另一台服务器并运行命令。当 ssh 命令在提示中运行时,如果我想连接(是/否)并输入密码。有没有办法在 ssh 调用时自动为提示提供输入?

另外,我确实意识到在 ssh 命令中使用公钥可以解决这个问题,但我没有创建公钥的权限。

【问题讨论】:

    标签: scripting input ksh


    【解决方案1】:

    Don Libes 创建了Expect,正是为了让您可以编写需要与提示交互的工具。我什至将它与调制解调器一起使用!这是一个非常古老但非常有效的工具,值得更广为人知。

    唯一的缺点是它使用了 Tcl,这不是我最喜欢的编程语言。但是学习足够多的 Tcl 来制作简单的期望脚本不会花费你一个多小时。而 Expect 确实是完成这项工作的完美工具。

    【讨论】:

    • 许多语言都有Expect的端口,尤其是python想到了pexpect
    • 虽然它可能不是每个人都喜欢的语言,但它非常适合这类工作。为工作使用正确的工具,在这种情况下,expect 通常优于几乎任何其他工具。它非常成熟、非常健壮、非常稳定。
    【解决方案2】:

    您可以下载和安装外部工具吗?如果您可以尝试,请尝试sshpass。我没试过,但你可以试一试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-14
      • 1970-01-01
      相关资源
      最近更新 更多