Скрипт Powershell для поиска / запуска запланированной задачи или создания - PullRequest
2 голосов
/ 09 октября 2019

Я пытаюсь выяснить, как написать сценарий PowerShell для поиска и запуска запланированной задачи или, если ее нет, создать ее. Вот что я построил до сих пор. Оператор else работает, но первая задача - нет.

$taskName = "crebackup"
$taskExists = Get-ScheduledTask | Where-Object {$_.TaskName -like $taskName}

if($taskExists) {
     Start-ScheduledTask -TaskName "crebackup"}

else {
$action = New-ScheduledTaskAction -Execute “C:\POSNation\SQLBackup\sqlbackup.exe”
$Trigger = New-ScheduledTaskTrigger -Daily -At 3am
$Settings = New-ScheduledTaskSettingsSet
$Task = New-ScheduledTask -Action $Action -Trigger $Trigger -Settings $Settings
Register-ScheduledTask -TaskName 'crebackup' -InputObject $Task -User 'usernamehere' -Password 'passwordhere'}

1 Ответ

0 голосов
/ 12 октября 2019

В этом случае задаче sqlbackup.exe требовался рабочий каталог для запуска. Это отображается как «Запускать (необязательно)», когда вы смотрите на задачу с помощью планировщика заданий. Чтобы добавить это, используйте это для переменной $action:

$action = New-ScheduledTaskAction -WorkingDirectory "C:\POSNation\SQLBackup" -Execute "C:\POSNation\SQLBackup\sqlbackup.exe"

Также убедитесь, что в скриптах нет умных кавычек (, ). Умные цитаты часто автоматически генерируются текстовыми процессорами и некоторыми веб-сайтами. Я заменил умные цитаты в приведенном выше примере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...