我试图在一个txt文件中获得shell命令的输出。到目前为止,我已经成功地得到了我的脚本输出这种方式
import subprocess
import logging
logging.basicConfig(level=logging.DEBUG,filename='E:\FYP\FYPPP\AMAPT\hola.txt',filemode='w')
console = logging.StreamHandler()
console.setLevel(logging.INFO)
formatter = logging.Formatter('')
console.setFormatter(formatter)
logging.getLogger('').addHandler(console)
command="sh amapt.sh"
logging.info(subprocess.Popen(command,stdout=subprocess.PIPE,shell=True).stdout.read())
这会显示我的脚本的输出(阿马特·什)以及将输出存储在txt文件中。 但我必须得到“sh”的输出阿马特·什-s码试用.apk“并将其存储在txt文件中,如上所述。我试过这样做
command="sh amapt.sh -s try.apk"
logging.info(subprocess.Popen(command,stdout=subprocess.PIPE,shell=True).stdout.read())
但是我在运行这个代码时遇到了一个错误
tput: terminal attributes: No such device or address
tput: terminal attributes: No such device or address
为什么不使用subprocess.call?可以使用
stdout
参数指向文件流。你知道吗相关问题 更多 >
编程相关推荐