我有几个命令行界面命令可以使用Windows命令提示符执行。我用来检索的命令很少文件从CVS库使用命令提示符。现在我想通过一个python脚本来执行这些命令。我发现我必须使用子进程来通过python脚本与命令提示符进行交互。我试图运行下面这段代码通过HEAD从CVS存储库中检索文件。当我试图直接从命令提示符执行这些命令时,它们会正确执行。我可以看到它创建了一个本地工作区并正确检索文件。但是当我执行python脚本,它不会执行任何操作。我需要您的帮助。我也希望通过标记来检索文件。根据用户指定的输入从python脚本执行windows命令行从CVS存储库检索文件
import os
import sys
import subprocess
Current_Working_Directory=os.getcwd()
print "Current_Working_Directory",Current_Working_Directory
cmd = ['cvs',
'-d:::pserver:<username>@<computername>:<repository>
'login']
p = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
output=p.communicate()
print "p",p
cmd1=['set','CVSROOT','=','pserver:<username>@<computername>:<repository>']
p1 = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
print p1
cmd2=['cvs','co','-r','HEAD','Test']
p2 = subprocess.Popen(cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
print p2
其实如果我尝试运行上面的code.It不从CVS存储库中检索文件,而如果它尝试在命令提示符下运行这些命令,文件被正确提取,我可以在我的本地工作区中看到这些文件。我如何使用python脚本检索文件? – user1681102
你做了什么来调试这个问题? CVS提供了什么输出? – Mort
我现在改变了我的方法。而不是直接使用python脚本来执行命令行界面。我创建了一个批处理文件,它具有从CVS存储库中检索文件的所有命令,并且我正试图从我的python脚本中调用这个bat文件。为我工作! – user1681102