2014-02-19 2 views
0

장기 실행 프로세스 후에 Windows 7에 조각 모음 도구 defrag을 호출하려면 예제에 표시된대로 Pythonsubprocess.Popen을 사용하십시오.Windows 7에서 subprocess.Popen을 사용하여 조각 모음 호출

from subprocess import Popen 

process1 = Popen('defrag', shell = True) 
process1.wait() 
print('finished defragmentation!') 

이 출력 다음 제공 : 독일의 출력 죄송합니다

Der Befehl "defrag" ist entweder falsch geschrieben oder 
konnte nicht gefunden werden. 
finished defragmentation! 

합니다. 영어로 전환하는 방법을 모르십시오. 그러나 이는 defrag 명령을 찾을 수 없음을 의미합니다. 나는 shell=False으로 시도하고 입력 인자로 시퀀스를 사용했다. 아무 것도 효과가 없었지만, 나는 Windows XP에서 같은 것을 한 것을 기억합니다. 또한 dirPopen으로 호출하십시오. defragWindows 7에서 작동하지 않는 이유는 무엇입니까? 나는 그것을 어떻게 만들 수 있습니까?

+0

'cmd'를 열고'defrag'를 작성하면 도움말 텍스트가 정확합니까? – Torxed

+0

물론입니다. 명령 줄에서 조각 모음을 실행하면 작동합니다. – Holger

+0

다시 한번, 어리석은 질문에 대해 유감스럽게 생각합니다. 'Popen ('Defrag.exe', shell = True, cwd = 'C : \\ Windows \\ System32 \\')'을 시도해 볼 수 있습니까? – Torxed

답변

0

이제 내 자신의 질문에 대답 할 수 있습니다. 문제는 64 비트 Windows 컴퓨터에서 32 비트 Python을 실행하고 있다는 것입니다. 64 비트 Python 설치를 사용하면 모든 것이 정상적으로 실행됩니다.

관련 문제