Не создается файл журнала при запуске сценария powershell с планировщиком задач Windows

58
7

Я создал следующий скрипт powershell:

stop-service ''3456''

start-sleep -s 60

stop-service "2354"

start-sleep -s 60

Restart-computer QY34 -Force

send -mailmessage -from operating.system@abc.com -To asdf@abc.com -subject test -attachment 'c:\Temp|test.log' -smtp server "127.0.0.1"

Я ввел следующую информацию в планировщик задач Windows

На вкладке Действия;

C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe

Вкладка "Аргументы":

-file "c:\scripts\test.ps1" *> "c:\Temp\test.log"

Может кто-нибудь, пожалуйста, помогите мне получить файл журнала при запуске сценария через планировщик задач?

спросил(а) 2019-04-03T21:49:00+03:00 1 год, 6 месяцев назад
1
Решение
99

Изменить аргументы от

-file "c:\scripts\test.ps1"*>"c:\Temp\test.log"

в

 "c:\scripts\test.ps1"* > "c:\Temp\test.log"

и это должно работать как ожидалось. Обратите внимание на пробелы до и после>.

Я думаю, что проблема в том, что Powershell будет читать все после -file в качестве входного файла. Это будет продолжаться, но, поскольку он просто прекращает чтение после бита "file", оператор> игнорируется/не отображается. При удалении -file Powershell все равно найдет скрипт, используя позиционные параметры, но он также будет обрабатывать оператор> и выводить в файл.

Если вы запускаете, если из командной строки это будет работать, я думаю, потому что cmd.exe будет обрабатывать вывод вместо Powershell в этом случае.

ответил(а) 2019-04-03T23:01:00+03:00 1 год, 6 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема