2024-03-28 14:31:54 发布
网友
外壳脚本: 你好.sh在
#!/bin/bash echo "Enter your name: " read name echo "Hello $name"
我想调用你好.sh在python中,以非交互方式填充变量“name”。怎么能做到呢?在
您应该能够使用子流程Popen.communicate:
Popen.communicate
from subprocess import Popen,PIPE p = Popen(['bash','./Hello.sh'],stdin=PIPE,stderr=PIPE,stdout=PIPE) stdout_data,stderr_data = p.communicate("Hello World!\n")
在pipes上加1。更“空壳化”的方法是:
import subprocess the_name = 'the_name' myproc = subprocess.Popen(['echo %s | bash Hello.sh' % the_name], stdin = subprocess.PIPE, stdout = subprocess.PIPE, shell=True) out, err = myproc.communicate() print out
您应该能够使用子流程
Popen.communicate
:在pipes上加1。更“空壳化”的方法是:
相关问题 更多 >
编程相关推荐