작업 스케줄러에서 실행되는 Powershell 스크립트가 결과를 생성하지 않음

작업 스케줄러에서 실행되는 Powershell 스크립트가 결과를 생성하지 않음

Windows Server 2012에서 Powershell 스크립트 파일을 예약된 작업으로 실행하려고 합니다. 스크립트는 xml 필터를 사용하여 이벤트 뷰어에서 이벤트를 선택하고 이를 텍스트 파일에 저장합니다. 스크립트 파일 이름은 Sugar2SvcNowLog.ps1이며 다음 텍스트를 포함합니다.

Get-WinEvent -FilterXml ([xml] (Get-Content "Desktop\Sugar2SvcNow.xml")) | format-table ProviderName, TimeCreated, Id, LevelDisplayName, message -wrap -autosize | Out-File -FilePath "C:\Users\yvoloshin_pdadmin\Desktop\Sugar2SvcNowLog $(get-date -f yyyy-MM-dd_HHmmss).txt"

이 스크립트는 다음과 같이 Windows 명령 프롬프트에서 실행할 때 의도한 대로 정확하게 텍스트 파일을 생성합니다.

powershell -file "C:\Users\yvoloshin_pdadmin\Desktop\Sugar2SvcNowLog.ps1"

"powershell"그런 다음 실행할 프로그램이 다음과 같이 설정되고 인수가 다음과 같은 작업 스케줄러 작업을 설정했습니다.

-file "C:\Users\yvoloshin_pdadmin\Desktop\Sugar2SvcNowLog.ps1"

작업이 실행되면 상태가 "작업이 성공적으로 완료되었습니다"로 표시됩니다. 단, 텍스트 파일은 생성되지 않습니다. 파일이 생성되지 않은 경우 어떻게 작업을 성공적으로 완료할 수 있습니까? 무엇을 다르게 해야 합니까?

답변1

귀하의 스크립트는 Desktop.

그러나 작업 스케줄러에서 실행하면 사용자 로그인도 없고 데스크탑도 없습니다.

Sugar2SvcNow.xml파일을 폴더에 넣고 스크립트에 전체 경로를 제공하는 것이 좋습니다 .

관련 정보