[英]Why is Python giving an error when the command prompt is not?
我最近由于GitHub的错误而丢失了所有数据。 我找到了一种检索信息的方法。 参见此处: 为何GitHub Windows客户端删除我的所有工作? 。 我现在决定制作一个Python程序来自动检索数据。 我已经手动完成了该过程,并且工作正常。 由于某种原因,当我调用命令: git cat-file -t code
,它返回: fatal: Not a valid object name code
。 您用十六进制数字替换代码。 例如0921d007bc8ca0000a587181263cf4f8d4d38e31
。 我在for循环中执行此操作。 我用
def runProcess(exe):
p = subprocess.Popen(exe, cwd="C:/Users/Ajay/github folder/", stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=False)
while True:
retcode = p.poll() #returns None while subprocess is running
line = p.stdout.readline()
yield line
if(retcode is not None):
done = True
break
运行命令提示符命令。 有人可以解释一下为什么此错误仅在Python中发生,如果我做错了什么,或者我应该解决一些问题。
谢谢!
由于某种原因,我使用了shell=False
。 如果将其更改为shell=True
则可以正常工作。 启用后,它将模拟外壳并正常工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.