Python subprocess.check_输出接收额外的表单提要(0x0c)字符

Python subprocess.check_输出接收额外的表单提要(0x0c)字符,python,windows,svn,subprocess,chromium,Python,Windows,Svn,Subprocess,Chromium,在Windows上,Python2.7,当shell=True被传递到子进程时。检查输出,我得到一个额外的\x0c字符。这不是预期的行为,因为它从depot_tools中断了Chromium的gclient.py。它试图检查svn版本是否最小为1.4,它对0x0c感到惊讶。然后一切都爆炸了 我不知道为什么会这样,这意味着什么。如何解决此问题?我不想从破解gclient.py开始,因为它适用于其他所有人。用谷歌搜索这个问题没有任何结果。在doctorlove的评论之后,我想检查子流程的内容。检查输

在Windows上,Python2.7,当
shell=True
被传递到
子进程时。检查输出,我得到一个额外的
\x0c
字符。这不是预期的行为,因为它从depot_tools中断了Chromium的gclient.py。它试图检查svn版本是否最小为1.4,它对0x0c感到惊讶。然后一切都爆炸了


我不知道为什么会这样,这意味着什么。如何解决此问题?我不想从破解gclient.py开始,因为它适用于其他所有人。用谷歌搜索这个问题没有任何结果。

doctorlove的评论之后,我想检查
子流程的内容。检查输出(['git','--version',shell=True)
返回。但它甚至没有从cmd启动。。。有点不对劲。
然后,我删除了几天前添加的注册表项
HKCU\Software\Microsoft\Command Processor\AutoRun
。现在一切正常。该键本应在cmd启动时处理批处理脚本的自动运行,但由于某些原因,它破坏了cmd中与字符相关的内容。

请运行
子进程。再次检查输出(['svn','--version','--quiet',shell=True)
。它应该引发一个名为“处理错误”的
。您是指
子流程。检查输出('svn--version--quiet',shell=True)
?我怀疑您将不得不临时修补它,并向模块作者提出问题,还是说它适用于所有其他使用Python2.7?间接级别windows的用户?在使用之前,从一开始就去掉“空白”?顺便说一句,如果我在Windows 7上对git而不是svn使用python 2.7执行此操作,我不会得到额外的字符。@doctorlove我试图从控制台调用git,但它根本不起作用。我的cmd有点问题。最后我尝试了一些hacky cmd教程,但我没有注意到现在它有问题。我不经常用它,其他的程序都能用。。。我会设法弄明白的。谢谢大家的评论。对不起,如果我听起来很粗鲁,当你说“它”不起作用时,我误解了。很高兴您解决了这个问题。听起来您的shell有一个启动脚本,它会发出一个
\x0C
字符当然。。。现在看来很明显。我不知道这是怎么可能的,因为那个脚本本来不打算打印任何东西,但那一定是原因。谢谢
>>> subprocess.check_output(['svn', '--version', '--quiet'], shell=True)
'\x0c1.6.16\r\n'
>>> subprocess.check_output(['svn', '--version', '--quiet'])
'1.6.16\r\n'