python - 自动输入 Python 提示

标签 python bash

我正在尝试编写一个 python 脚本,它将为我执行一个 bash 命令行程序。该程序要求用户输入两次,我希望我的脚本每次都自动输入“1”。

我听说过这样的事情:

os.system("program < prepared_input")

如何编写 prepared_input?谢谢。

最佳答案

用两行创建文件:

1
1

并在 bash 脚本中使用 read 获取输入:

演示:

$ cat abc
1
1
$ cat so.sh
#!/bin/bash
read data
echo "You entered $data"
read data
echo "Now you entered $data"
$ bash so.sh <abc
You entered 1
Now you entered 1

python :

>>> import os
>>> os.system("bash so.sh < abc")
You entered 1
Now you entered 1
0

关于python - 自动输入 Python 提示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17537021/

相关文章:

bash - 使用 shell 脚本查找特定文件类型的文件

python - web2py:如何实现网格的多个过滤器?

python - 如何向 ipython 添加隐式导入?

bash - 为什么我不能用expect脚本来启动redis?

linux - 循环遍历多个目录的 bash 脚本的输出

arrays - 使用 find 和 grep 填充数组

linux - 如何打印包含句子的列而不丢失 awk printf 中第一个单词之后的所有内容?

python - Django - 'module' 对象不可调用

python - Django collectstatic --no input Yes 而不是 no

Python - 计算正态分布