我正在尝试编写一个 python 脚本,它将为我执行 bash 命令行程序。该程序要求用户输入两次,我希望我的脚本每次都自动输入“1”。
我听说过这样的事情:
os.system("program < prepared_input")
Run Code Online (Sandbox Code Playgroud)
如何编写prepared_input?谢谢。
创建包含两行的文件:
1
1
Run Code Online (Sandbox Code Playgroud)
并read在 bash 脚本中使用来获取输入:
演示:
$ 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
Run Code Online (Sandbox Code Playgroud)
Python :
>>> import os
>>> os.system("bash so.sh < abc")
You entered 1
Now you entered 1
0
Run Code Online (Sandbox Code Playgroud)