2017-12-01 21 views
0

을 실행하기 전에 프로그램을 실행 실행합니다. 어떤 모듈도 다른 모듈과 상호 링크되거나 가져올 수 없습니다. 모두 독립 모듈입니다. 나는, 즉 두 프로그램에 문제를보고하고 "CmdOnRemoteServer"와 "여기서 ipaddress를"내가 프로그램 "CmdOnRemoteServer"프로그램을 실행하면를 PyDev 이클립스는 이전에 내가 여러 PyDev의 모듈 프로그램을 포함하는 하나의 프로젝트가 현재 프로그램

는 콘솔 인쇄 한 후 이전/오래된 프로그램 "여기서 ipaddress"의 출력이 전류로 점프 프로그램 "CmdOnRemoteServer"를 실행하고 출력을 인쇄합니다. 나는 프로그램 디버깅을 넣고 두 프로그램에서 중단 점을 가짐으로써이 문제를 찾을 수 있습니다. 기본 설정에서

>> 실행/디버그 >> 런칭, 선택한 옵션과 "실행 가능한 그렇지 않은 경우 >> 이전에 시작 응용 프로그램 실행"나는 경우 '추가

"을 선택한 자원 또는 활성 편집기를 실행"입니다 ____name____ == "____main____": "코드"CmdOnRemoteServer "로 코드를 작성했지만 도움이되지 않았습니다. 나는 mainthread에 나열된 두 프로그램을 보여줍니다 디버그 스크린 샷을 부착하고있다. enter image description here

누군가는이 문제를 좀 도와 주시겠습니까? 요청으로

이 질문에 코드를 추가 : 당신이 당신의 디버그 스택 트레이스에서 볼 수 있듯이

if __name__ == "__main__": 
    remoteServer=winrm.Session("IDCQEAM190.amdom009.lab", auth = ("Administrator", "Control123")) 
remoteCMD = remoteServer.run_cmd("ipconfig", ["/all"]) 

myfile = open(r"C:\Users\pshastri\Desktop\remoteServer.txt", "w") 
myfile.write(remoteCMD.std_out) 
myfile.close() 

myfile = open(r"C:\Users\pshastri\Desktop\remoteServer.txt", "r") 
ipPatt = "IPv4 Address[\.\s]{1,}:\s[\d+\.]{1,}" 
hostPatt = "Host Name [\.\s]{1,}: [A-Za-z0-9]+" 
domPatt = "Primary Dns Suffix [\.\s]{1,}: [A-Za-z0-9]+\.[A-Za-z0-9]+" 
myfile.seek(0) 
ipReg = re.findall(ipPatt, myfile.read()) 
myfile.seek(0) 
hostReg = re.findall(hostPatt, myfile.read()) 
myfile.seek(0) 
domReg = re.findall(domPatt, myfile.read()) 
print "".join(ipReg), "\n", "".join(hostReg), "\n", "".join(domReg) 
+0

정확히'경우 ____name____ == "____main____"추가 했습니까? 만약 그렇다면, 이것은 유효하지 않은 파이썬 구문이므로'if __name__ == "__main__":'을 대신 입력해야합니다. 또한 CmdOnRemoteServer에 대한 코드를 추가 할 수 있습니까? –

+0

아니요 여기에 텍스트 서식이 있기 때문입니다. 나는 잘못된 구문을 넣었을 때 컴파일 오류가 발생했을 것이다. 주 질문에 코드 추가. –

답변

0

, 문제는이 프로그램이있어 것 같다 (CmdOnRemoteServer)는 체인의 끝 파이썬 표준 라이브러리의 수입이 여기서 ipaddress 모듈 곳 (그래서, 오류를 해결하기 위해 그 이름이 이미 표준 라이브러리에서 사용되는, 다른 일에 여기서 ipaddress 모듈의 이름을 변경). `:

+0

myaddress에 ipaddress 파일의 이름을 변경했습니다. 이 시간은 비록 내가 파일에 중단 점을 넣었습니다 디버그 추적 파일을 참조하십시오. 그러나 CmdOnRemoteServer 출력을 인쇄하기 전에 myaddress 파일의 출력을 인쇄합니다. –

+0

글쎄, 실제로 가지고있는 것을 디버그 할 수는 없습니다 ... 제 제안은 인쇄를 시도하고 발견하려고하는 스택 추적을 보는 예외를 발생시키는 것입니다 무엇이 잘못 되었습니까 (이전 모듈의 남은 부분이 없도록 모든 .pyc 파일을 제거해야 할 수도 있음). –