【发布时间】:2016-06-11 09:02:58
【问题描述】:
这是我的bat文件的内容
Proselint 是一个 exe 文件
proselint C:\Users\Rahul\Desktop\proselint-0.5.3\proselint\proselint\something.md > ooo.txt
双击运行bat文件会产生以下输出
C:\Users\Rahul\Desktop\proselint-0.5.3\proselint\proselint\something.md:2:1: misc.mondegreens 'a girl with kaleidoscope eyes' is the preferred form.
C:\Users\Rahul\Desktop\proselint-0.5.3\proselint\proselint\something.md:1:38: misc.mondegreens 'laid him on the green' is the preferred form.
ooo.txt 中的正确输出是什么 但是当我尝试从 python 脚本运行 bat 时,我得到以下输出
C:\Users\Rahul\Desktop\proselint-0.5.3\proselint\proselint>proselint C:\Users\Rahul\Desktop\proselint-0.5.3\proselint\proselint\something.md 1>ooo.txt
这只是要执行的命令 使用的python代码是:
import os
os.system("C:/Users/Rahul/Desktop/proselint-0.5.3/proselint/proselint/command.bat")
注意 :使用 SubProcess 也给了我与 ooo.txt 相同的输出
from subprocess import call
call("C:/Users/Rahul/Desktop/proselint-0.5.3/proselint/proselint/command.bat")
【问题讨论】:
-
你能用与proselint不同的程序重现这个问题吗?在批处理文件中使用
echo或其他程序不会重现观察到的行为。 -
使用 dir 命令效果很好。因此,使用 python 脚本运行时,只有 Windows 内置命令才能正常工作
-
proselint 的 windows 版本是从哪里得到的?
-
@Ashafix pip install proselint ?
-
但它不会是 Python 模块而不是 exe 文件吗?
标签: python operating-system subprocess