【问题标题】:Python - Running a command then inputting when prompted automaticallyPython - 运行命令然后在自动提示时输入
【发布时间】:2012-11-17 17:46:08
【问题描述】:

作为更大脚本的一部分,我正在运行 ssh-keygen 来生成 RSA 公钥。我不打算使用密码或更改默认文件夹位置。但是,我仍然需要处理来自ssh-keygen 的文件名和密码提示。我怎样才能避免不得不处理这些提示,无论是使用ssh-keygen 的选项还是在脚本中?

【问题讨论】:

    标签: python ssh-keys


    【解决方案1】:

    您可以将它们作为参数传递以避免需要任何输入:

    ssh-keygen -q -N '' -C 'generated key' -t rsa -f /path/to/key
    

    【讨论】:

      【解决方案2】:

      一般来说,这些问题可以用 pexpect:http://www.noah.org/python/pexpect/#doc 来解决,它是 Python 的 expect 包装器。它让您等待某个字符串被打印出来,然后通过发送响应来做出反应,就像在终端中输入一样。

      【讨论】:

      • 这是一个简洁的小模块,我去看看。
      猜你喜欢
      • 2014-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-25
      • 2019-11-16
      • 2018-02-15
      相关资源
      最近更新 更多