我正在 Linux 中使用 Python 编写自动化脚本。它调用另一个要求用户输入密码的进程。
我已经使用 pexpect 实现了它我只是生成命令,然后进行交互。
还有其他方法吗?我无法使用 pexpect,因为我需要在未安装 pexpect 的机器上运行脚本。
最佳答案
我见过使用 ssh
执行此操作的代码,方法是使用 popen
/subprocess
和标准流。
但这是一个非常糟糕的做法(需要将密码以明文形式保存在相对容易访问的地方,并且不允许轻易更改)。
- 事实上,我提到的代码在我以前的职业中引起了一个问题:我在服务器上安装了一个客户端 key ,脚本不再按预期看到密码提示!
所以我建议以不需要手动输入密码的方式(选项、配置文件、sudo
等)运行程序。
关于需要用户密码的python运行程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29836238/