2013-04-22 2 views
0

PowerShell 프롬프트 및 명령 프롬프트에서 아래 명령을 실행할 수 있지만 Windows 스케줄러를 사용하여 일정을 설정할 수 없습니다.Windows 스케줄러를 통해 프로세스를 자동화하기위한 powershell 스크립트를 예약하는 방법은 무엇입니까?

PowerShell 스크립트 코드 :

appcert.exe test -apptype metrostyle -packagefullname abc_somename -reportoutputpath C:\result.xml 

appcert.exe는 마이크로 소프트가 내 Windows   8 응용 프로그램에 인증 시험을 수행하기위한 EXE를 제공합니다. 내가 예약하고

powershell -command "& 'PathOfABC\ABC.ps1' " 
  • :

    appcert.exe test -apptype metrostyle -packagefullname abc_somename -reportoutputpath C:\result.xml 
    
  • 가이 코드에 배치 파일 PQR.bat을 만듭니다

    1. 내가 코드 파일 ABC.ps1을 만드는 중이라서 : 나는 다음과 같은했다 Windows 스케줄러를 통해.

      • 액션 : 액션 탭에서 작업을 작성하는 동안

    , 나는 다음과 같은 세부 정보를 선택하는 프로그램을

  • 프로그램/스크립트를 시작 경로를 배치 파일

  • 에 시작 위치 : 배치 파일이 들어있는 폴더의 경로

  • 그리고 15 분마다 실행되도록 예약합니다. 작업이 완료되었지만 내 C 드라이브에 result.xml이 표시되지 않습니다. 15 분마다 실행하도록이 배치 파일을 어떻게 예약 할 수 있습니까?

    답변

    0

    powershell -File "C:\path\to\ABC.ps1"을 사용하여 powershell 스크립트를 실행하십시오. 또는 appcert.exe 명령을 일괄 처리 스크립트에 직접 입력하십시오. 실행 파일을 실행하기 위해 PowerShell 스크립트를 실행하는 배치 스크립트를 실행하는 것은 의미가 없습니다.

    • 당신이 적어도 RemoteSigned에 실행 정책을 설정 한 마십시오

      수동으로 스크립트를 실행할 때 appcert.exeC:\result.xml을 생성한다고 가정하면?

    • 작업을 실행하는 사용자의 권한이 Log on as batch job입니까?
    • 예약 된 작업이 가장 높은 권한으로 실행되도록 구성되어 있습니까 (UAC가 활성화되어 있다고 가정)?

    스크립트에 디버깅 코드를 추가해 보았습니까?

    appcert.exe test ... >"%USERPROFILE%\appcert.log" 2>&1 
    exit /b %errorlevel% 
    

    작업을 실행하려고하면 appcert.log이 생성됩니까? 그것은 무엇을 말하는가?

    관련 문제