处理python程序的多个用户输入的Bash脚本

64jmpszr  于 2022-11-28  发布在  Python
关注(0)|答案(1)|浏览(131)

我有一个python程序,它会多次提示用户输入(通过CLI)。
举个例子,假设我有一个test.py文件,它提示输入input1,一段时间后,又提示输入input2

...
...
input1 = input("Enter input 1")
...
...
input2 = input("Enter input 2")
...
...

如何编写一个bash脚本来运行这个程序,等待并给出input1的参数,然后再次等待input2并给出它的参数?
如果你能给我指出正确的方向那就太好了;我在网上找到的所有东西都是关于实际bash脚本的多个输入,或者是关于多个参数(作为单个输入)。我对bash脚本编写也没有经验,所以如果我缺乏经验是我无法找到正确资源的原因,我提前向你道歉。

k10s72fa

k10s72fa1#

在shell脚本中,可以使用<<将数据放到脚本本身中,当bash看到<< EOF时,它会将脚本中的所有内容推送到被调用程序的stdin中,直到下一个“EOF”。
test.py

#!/usr/bin/env python
input1 = input("Enter input 1")
input2 = input("Enter input 2")
print("Got", input1, input2)

test.sh

#!/bin/sh
./test.py <<EOF
I am input 1
I am input 2
EOF

这称为Here Document,您可以使用任何单词来代替EOF

相关问题