0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
1 | |
Запуск планировщика25.08.2017, 14:49. Показов 1861. Ответов 17
Метки нет (Все метки)
В планировщике заданий, в поле аргумент:
-NoProfile -WindowStyle Hidden -command "& {(Get-WUInstall -ListOnly).Length | Out-File "C:\temp\PowerShell\result.txt" -encoding Unicode; ((get-date) - (Get-WUHistory | where {$_.Title -notlike "*Microsoft Endpoint Protection*"} | select date -First 1).date).days | Out-File "C:\temp\PowerShell\days.txt" -encoding Unicode}" Задание выполняется с кодом 0, но запись в файлы не выполняется, если в PS выполнять два скрипта по отдельности, то работает. Подскажите в чём может быть проблема? Может где то ошибка?
0
|
25.08.2017, 14:49 | |
Ответы с готовыми решениями:
17
Удаленное создание планировщика PowerShell не работает из планировщика Ошибка скрипта планировщика nnCron Запуск планировщика с повышенными правами |
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|
25.08.2017, 15:38 | 2 |
Попробуйте поменять кавычки для ключа -command и имён файлов, например вот так у меня всё работает из планировщика:
-NoProfile -WindowStyle Hidden -command "&{gps s* | Out-File 'C:\temp\PowerShell\result.txt' -encoding Unicode; gps s* | ? Id -lt 1000 | Out-File 'C:\temp\PowerShell\days.txt' -encoding Unicode}" Добавлено через 3 минуты Для поиска ошибок можете сначала проверять из cmd: C:\>powershell -command "&{gps s* | Out-File 'C:\temp\PowerShell\result.txt' -encoding Unicode; gps s* | ? Id -lt 1000 | Out-File 'C:\temp\PowerShell\days.txt' -encoding Unicode}"
1
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
||||||
26.08.2017, 11:05 [ТС] | 3 | |||||
Спасибо Вам большое за помощь, но всё равно не получается, уже как только не пробовал.
Есть ещё один вариант, подскажите как исправить в скрипте по созданию шедулера (ранее Вы мне помогли в другой теме), чтобы шедулер запускал два скрипта 1.ps1 и 2.ps2 Сценарии этих скриптов ниже записаны в переменную.
0
|
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|
27.08.2017, 15:53 | 4 |
Ещё раз - пробовали блок -command заключить в двойные кавычки, а имена файлов внутри блока в одинарные?
0
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
27.08.2017, 16:12 [ТС] | 5 |
Да, конечно.
Проводил "кучу экспериментов", вот как раз $Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument '-NoProfile -WindowStyle Hidden -command "& {(Get-WUInstall -ListOnly).Length | Out-File "C:\temp\PowerShell\result.txt" -encoding Unicode}' выполняется на ура, хоть с двойными, хоть с одинарными кавычками 'C:\temp\PowerShell\days.txt', а второй скрипт почему то в шедулере вообще отказывается отрабатывать. Если просто в PS его запускать '((get-date) - (Get-WUHistory | where {$_.Title -notlike "*Microsoft Endpoint Protection*"} | select date -First 1).date).days | Out-File "C:\temp\PowerShell\days.txt' то без проблем, а в шедулере, выполняется 0x0, но результата нет(((
0
|
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|
27.08.2017, 16:26 | 6 |
Сообщение было отмечено Dimasik1989 как решение
Решение
Их cmd запускали: powershell -command "&{проблемный блок}" , сообщений об ошибках нет?
0
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
27.08.2017, 16:52 [ТС] | 7 |
К сожалению проверить сейчас на том сервере не могу физически , но вот дома на PS скрипт работает, а вот во вложении результат выполнения скрипта плохой. Может на сервере был бы другой результат.
0
|
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|
27.08.2017, 17:16 | 8 |
И на сервере будет такая же ошибка. Поэтому я и писал вам - проверьте всё в cmd, а ещё не зря обращал внимание на кавычки. Сравните в cmd:
powershell -command "&{gps | ? {$_.name -like 'sv*'}}" powershell -command "&{gps | ? {$_.name -like "sv*"}}" Добавлено через 1 минуту В вашем случае ошибка из-за "*Microsoft Endpoint Protection*" в двойных кавычках.
0
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
27.08.2017, 17:22 [ТС] | 9 |
Я делал так:
Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument '-NoProfile -WindowStyle Hidden -command "& {((get-date) - (Get-WUHistory | where {$_.Title -notlike '*Microsoft Endpoint Protection*'} | select date -First 1).date).days | Out-File 'C:\temp\PowerShell\days.txt' -encoding Unicode}"' И всё равно не работало(( Добавлено через 2 минуты $Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument '-NoProfile -WindowStyle Hidden -command "& {((get-date) - (Get-WUHistory | where {$_.Title -notlike '*Microsoft Endpoint Protection*'} | select date -First 1).date).days | Out-File 'C:\temp\PowerShell\days.txt' -encoding Unicode}"'
0
|
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|
27.08.2017, 17:43 | 10 |
Сообщение было отмечено Dimasik1989 как решение
Решение
На скриншоте с ошибкой у вас *Microsoft Endpoint Protection*' в двойных кавычках.
Вариант поиска проблемы я вам показал: powershell -command "&{проблемный блок}" в cmd и смотрите что не так...
1
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
27.08.2017, 17:47 [ТС] | 11 |
Хорошо, KDE777, спасибо, попробую, может где то что то упустил Yо временное решение как вариант, подскажите как сделать xтобы эти два скрипта в шедулере запускались через файлы допустим 1.ps1 и 2.ps1
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument '......
0
|
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|
27.08.2017, 20:23 | 12 |
Собрать всё в один файл 3.ps1
$Action = New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument '-ExecutionPolicy Bypass -file "C:\Script\3.ps1"'
1
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
28.08.2017, 08:12 [ТС] | 13 |
KDE777, посмотрите пожалуйста вложение, можете что нибудь добавить?
0
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
28.08.2017, 11:13 [ТС] | 14 |
Прошу прощения, я затупил, вот так выполняется в cmd
powershell -NoProfile -WindowStyle Hidden -command "& {(Get-WUInstall -All).Length | Out-File "C:\1\2.txt" -encoding Unicode; ((get-date) - (Get-WUHistory | where {$_.Title -notlike '*Microsoft Endpoint Protection*'} | Select-Object date -First 1).date).days | Out-File "C:\1\1.txt" -encoding Unicode}" Огромное Вам спасибо, что помогали мне. Осталось только проверить где это действительно должно работать. Добавлено через 24 минуты Рано начал радоваться. В то всё выполняется без проблем. А в планировщике выполняется с кодом 0, но без результата((( Какая то засада( Добавлено через 36 секунд В cmd выполняется без проблем* Добавлено через 1 час 47 минут Оказывается это задание выполняется только от моей локальной учётки, все остальные в том числе от Системы не воспринимает вообще.
0
|
1885 / 1107 / 428
Регистрация: 22.01.2016
Сообщений: 3,050
|
|
28.08.2017, 11:23 | 15 |
Сообщение было отмечено Dimasik1989 как решение
Решение
Ключи -NoProfile и -WindowStyle Hidden совсем не нужны для отладки. Как раз с ними вы никаких ошибок не увидите. Проверять нужно так: powershell -command "&{проблемный блок}"
1
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
28.08.2017, 11:38 [ТС] | 16 |
Проверил. Работает. Всё выполняется без ошибок. Данные пишутся в 1.txt и 2.txt
0
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
28.08.2017, 11:40 [ТС] | 17 |
И если из под моей учётки выполнять задание в шедулере, то работает, а от системы не выполняется.
0
|
0 / 0 / 0
Регистрация: 12.06.2016
Сообщений: 288
|
|
29.08.2017, 15:49 [ТС] | 18 |
Проверил там где нужно, всё работает. Спасибо.
0
|
29.08.2017, 15:49 | |
29.08.2017, 15:49 | |
Помогаю со студенческими работами здесь
18
Запуск Bat из планировщика задач Windows Запуск из Планировщика заданий батника для очистки кэша браузеров Запуск bat-файла для копирования определённого файла по сети из Планировщика заданий Запуск "Планировщика заданий" от имени пользователя Изменение задания Планировщика Права планировщика заданий Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |