2014-07-26 2 views
0

Powershell ISE에서이 스크립트를 실행하면 작동하지만 배치 파일에서 시작할 때 작동하지 않습니다. 스크립트는 here(clicky)입니다. 이 파일을 실행하는 배치 파일은 here(clicky)입니다.ISE에서는 왜 작동합니까?하지만 배치 파일에서 시작할 때는 그렇지 않습니다.

배치 파일에서 실행하면 powershell은 (0)을 쓰고 작동하지 않습니다. ISE에서 시작할 때 powershell은 (1)을 작성한 다음 작동합니다.

또한 스크립트가 실행되고 있지만 올바르게 실행되지 않았 음을 확인했습니다.

미리 감사드립니다.

답변

1

스크립트의 경로를 큰 따옴표로 묶는 것처럼 보일 수 있습니다. 또한 PowerShell을 사용하여 파일을 호출하기 위해 다른 PowerShell을 시작하는 이유는 무엇입니까? 시도해보십시오 :

@ECHO OFF 
SET ThisScriptsDirectory=%~dp0 
SET PowerShellScriptPath="%ThisScriptsDirectory%\data\Start.ps1" 
PowerShell -ExecutionPolicy Bypass -File %PowerShellScriptPath% 
+0

저는 Powershell 파일을 호출하는 배치 파일로 사용하고 있습니다. 그리고 이것은 같은 일을하지만, 파워 쉘 윈도우가 아닌 일괄 윈도우에서 수행됩니다. – Oinkers

+0

그리고 왜 그렇게 나쁜 것입니까? 유일한 차이점은 스크립트가 완료 될 때까지 cmd-window를 사용한다는 것입니다 (btw는 powershell 창은 파란색 바탕의 콘솔과 동일 함). 별도의 창에서 실행하려면'start/wait PowerShell -ExecutionPolicy Bypass -File % PowerShellScriptPath %'를 사용하십시오. 'PowerShell.exe'는 느리게 시작하고 많은 리소스를 사용하므로 가능한 한 적은 프로세스를 생성하고 싶을 것입니다. –

+0

그것은 똑같은 일을하는 것으로, 여전히 작동하지 않는다는 것을 의미했습니다. – Oinkers