Поделиться через


New-ScheduledJobOption

Создает объект, содержащий дополнительные параметры для запланированного задания.

Синтаксис

New-ScheduledJobOption
   [-RunElevated]
   [-HideInTaskScheduler]
   [-RestartOnIdleResume]
   [-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
   [-DoNotAllowDemandStart]
   [-RequireNetwork]
   [-StopIfGoingOffIdle]
   [-WakeToRun]
   [-ContinueIfGoingOnBattery]
   [-StartIfOnBattery]
   [-IdleTimeout <TimeSpan>]
   [-IdleDuration <TimeSpan>]
   [-StartIfIdle]
   [<CommonParameters>]

Описание

Командлет New-ScheduledJobOption создает объект, содержащий расширенные параметры запланированного задания.

Можно использовать объект ScheduledJobOptions , возвращающий New-ScheduledJobOption параметры задания для нового или существующего запланированного задания. Кроме того, можно задать параметры задания с помощью Get-ScheduledJobOption командлета, чтобы получить параметры задания существующего запланированного задания или с помощью хэш-табличного значения для представления параметров задания.

Без параметров New-ScheduledJobOption создает объект, содержащий значения по умолчанию для всех параметров. Так как можно изменить все свойства, кроме свойства JobDefinition, можно использовать результирующий объект в качестве шаблона и создавать стандартные объекты параметров для вашего предприятия.

При создании запланированных заданий и настройки их параметров проверьте значения по умолчанию для всех параметров запланированного задания. Запланированные задания запускаются только в том случае, если соблюдены все условия их выполнения.

New-ScheduledJobOption — одна из коллекций командлетов планирования заданий в модуле PSScheduledJob, включенном в Windows PowerShell.

Дополнительные сведения о запланированных заданиях см. в разделах описания в модуле PSScheduledJob. Импортируйте модуль PSScheduledJob, а затем введите Get-Help about_Scheduled* или просмотрите about_Scheduled_Jobs.

Этот командлет впервые появился в Windows PowerShell 3.0.

Примеры

Пример 1. Создание объекта параметра запланированного задания со значениями по умолчанию

В этом примере создается объект параметра запланированного задания со значениями по умолчанию.

New-ScheduledJobOption

Пример 2. Создание объекта параметра запланированного задания с настраиваемыми значениями

В этом примере создается объект параметра запланированного задания с настраиваемыми значениями

New-ScheduledJobOption -RequireNetwork -StartIfOnBattery

StartIfOnBatteries     : True
StopIfGoingOnBatteries : True
WakeToRun              : False
StartIfNotIdle         : True
StopIfGoingOffIdle     : False
RestartOnIdleResume    : False
IdleDuration           : 00:10:00
IdleTimeout            : 01:00:00
ShowInTaskScheduler    : True
RunElevated            : False
RunWithoutNetwork      : False
DoNotAllowDemandStart  : False
MultipleInstancePolicy : Ignore
NewJobDefinition       :

Следующая команда создает объект запланированного задания, который требует наличия сети и запускает запланированное задание, даже если компьютер не подключен к электросети.

В выходных данных показано, что параметр RequireNetwork изменил значение свойства $false RunWithoutNetwork на, а параметр StartIfOnBattery изменил значение свойства StartIfOnBatteries на $true.

Пример 3. Задание параметров для нового запланированного задания

В этом примере показано, как использовать объект ScheduledJobOptions , возвращающий New-ScheduledJobOption параметры для нового запланированного задания.

$runAsAdmin = New-ScheduledJobOption -RunElevated
Register-ScheduledJob -Name Backup -FilePath D:\Scripts\Backup.ps1 -Trigger $Mondays -ScheduledJobOption $RunAsAdmin
Get-ScheduledJobOption -Name Backup

StartIfOnBatteries     : False
StopIfGoingOnBatteries : True
WakeToRun              : False
StartIfNotIdle         : True
StopIfGoingOffIdle     : False
RestartOnIdleResume    : False
IdleDuration           : 00:10:00
IdleTimeout            : 01:00:00
ShowInTaskScheduler    : True
RunElevated            : True
RunWithoutNetwork      : True
DoNotAllowDemandStart  : False
MultipleInstancePolicy : IgnoreNew
JobDefinition          : Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

Первая команда создает объект ScheduledJobOptions с параметром RunElevated. Он сохраняет объект в переменной $runAsAdmin .

Вторая команда использует Register-ScheduledJob командлет для создания нового запланированного задания. Значение параметра ScheduledJobOption является объектом параметра в значении переменной $runAsAdmin .

Третья команда использует Get-ScheduledJobOption командлет для получения параметров задания запланированного задания резервного копирования. Выходные данные командлета показывают, что для свойства RunElevated задано $true значение, а свойство JobDefinition объекта параметра задания теперь заполняется объектом запланированного задания резервного копирования.

Пример 4. Сортировка свойств объекта параметра запланированного задания

В этом примере показано, как сортировать свойства объекта ScheduledJobOptions в алфавитном порядке для простого чтения.

$options = New-ScheduledJobOption -WakeToRun
$options.PSObject.Properties | Sort-Object -Property Name | Format-Table -Property Name, Value -Autosize

Name                       Value
----                       -----
DoNotAllowDemandStart      False
IdleDuration            00:10:00
IdleTimeout             01:00:00
JobDefinition
MultipleInstancePolicy IgnoreNew
RestartOnIdleResume        False
RunElevated                False
RunWithoutNetwork           True
ShowInTaskScheduler         True
StartIfNotIdle              True
StartIfOnBatteries         False
StopIfGoingOffIdle         False
StopIfGoingOnBatteries      True
WakeToRun                   True

Первая команда использует New-ScheduledJobOption командлет для создания объекта ScheduledJobOptions . Команда использует параметр WakeToRun и сохраняет полученный объект в переменной $options .

Чтобы получить свойства $Options в качестве объектов, вторая команда использует свойство PSObject всех объектов Windows PowerShell и его свойства Properties. Затем команда передает объекты Sort-Object свойств командлету, который сортирует свойства в алфавитном порядке по имени, а затем Format-Table командлету, который отображает имена и значения свойств в таблице.

Этот формат упрощает поиск свойства WakeToRun объекта ScheduledJobOptions и $options проверки того, что его значение было изменено на $false$true.

Параметры

-ContinueIfGoingOnBattery

Не останавливайте запланированное задание, если компьютер переключается на питание от батареи (отключается от электросети) во время выполнения этого задания. По умолчанию запланированные задания останавливаются при отключении компьютера от электросети.

Параметр ContinueIfGoingOnBattery задает значение свойства StopIfGoingOnBatteries запланированных заданий $true.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DoNotAllowDemandStart

Запускайте задание только при его активации. Пользователи не могут запускать задание вручную, например с помощью функции запуска компонентов в планировщике заданий.

Этот параметр влияет только на планировщик. Он не запрещает пользователям использовать Start-Job командлет для запуска задания.

Параметр DoNotAllowDemandStart задает значение свойства DoNotAllowDemandStart запланированных заданий$true.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HideInTaskScheduler

Не отображайте задание в планировщике заданий. Это значение затрагивает только компьютер, на котором выполняется задание. По умолчанию запланированные задачи отображаются в планировщике заданий.

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

Параметр HideInTaskScheduler задает значение свойства ShowInTaskScheduler запланированных заданий$false.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IdleDuration

Указывает, как долго компьютер должен простаивать перед запуском задания. Значение по умолчанию равно 10 минутам. Если компьютер неактивен в течение указанной длительности до истечения срока действия idleTimeout , запланированное задание не запускается до следующего запланированного времени, если таковой имеется.

Введите объект TimeSpan, например один, созданный New-TimeSpan командлетом, или введите значение в часах>:минутах>:<<секундах>, который автоматически преобразуется в <объект TimeSpan.

Чтобы включить это значение, используйте параметр StartIfIdle . По умолчанию для свойства StartIfNotIdle запланированных заданий задано $true значение, а Windows PowerShell игнорирует значения IdleDuration и IdleTimeout .

Type:TimeSpan
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-IdleTimeout

Указывает, как долго запланированное задание ожидает нахождения компьютера в неактивном состоянии. Если это время ожидания истекает до того, как компьютер остается бездействующим в течение периода времени, указанного параметром IdleDuration , задание не выполняется до следующего запланированного времени, если таковой имеется. Значение по умолчанию — один час.

Введите объект TimeSpan, например один, созданный New-TimeSpan командлетом, или введите значение в часах>:минутах>:<<секундах>, который автоматически преобразуется в <объект TimeSpan.

Чтобы включить это значение, используйте параметр StartIfIdle . По умолчанию для свойства StartIfNotIdle запланированных заданий задано $true значение, а Windows PowerShell игнорирует значения IdleDuration и IdleTimeout .

Type:TimeSpan
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MultipleInstancePolicy

Определяет, как система реагирует на запрос о запуске экземпляра запланированного задания во время выполнения другого экземпляра этого задания. Значение по умолчанию — IgnoreNew. Допустимые значения для этого параметра:

  • IgnoreNew — Новый экземпляр задания игнорируется.
  • Parallel — новый экземпляр задания запускается немедленно.
  • Queue — новый экземпляр задания начинается сразу после завершения текущего экземпляра.
  • StopExisting — Текущий экземпляр задания останавливается и запускается новый экземпляр.

Чтобы запустить задание, должны быть выполнены все условия для расписания задания. Например, если условия, заданные параметрами RequireNetwork, IdleDuration и IdleTimeout , не удовлетворяются, экземпляр задания не запускается независимо от значения этого параметра.

Type:TaskMultipleInstancePolicy
Accepted values:None, IgnoreNew, Parallel, Queue, StopExisting
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RequireNetwork

Запускает запланированное задание только при наличии доступных сетевых подключений.

Если указать этот параметр и в запланированное время запуска задания сеть будет недоступна, задание не запускается до следующего запланированного времени запуска, если такое имеется.

Параметр RequireNetwork задает значение свойства RunWithoutNetwork запланированных заданий $false.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RestartOnIdleResume

Перезапускает запланированное задание, если компьютер переходит в состояние простоя. Этот параметр работает с параметром StopIfGoingOffIdle , который приостанавливает выполнение запланированного задания, если компьютер становится активным (оставляет состояние простоя).

Параметр RestartOnIdleResume задает значение свойства RestartOnIdleResume запланированных заданий$true.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-RunElevated

Запускает запланированное задание с правами члена группы администраторов на компьютере, где выполняется задание.

Чтобы включить запланированное задание для выполнения с разрешениями Администратор istrator, используйте параметр Credential для Register-ScheduledJob предоставления явных учетных данных для задания.

Параметр RunElevated задает значение свойства RunElevated запланированных заданий $true.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StartIfIdle

Запускает запланированное задание, если компьютер был неактивным в течение времени, указанного параметром IdleDuration до истечения срока действия параметра IdleTimeout .

По умолчанию параметры IdleDuration и IdleTimeout игнорируются, а задание начинается с запланированного времени начала, даже если компьютер занят.

Если указать этот параметр и в запланированное время запуска задания компьютер будет занят (не будет простаивать), задание не запускается до следующего запланированного времени запуска, если такое имеется.

Параметр StartIfIdle задает значение свойства StartIfNotIdle запланированных заданий$false.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StartIfOnBattery

Запускает запланированное задание, даже если в запланированное время запуска компьютер работает от батарей. Значение по умолчанию — $false.

Параметр StartIfOnBattery задает значение свойства StartIfOnBatteries запланированных заданий $true.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StopIfGoingOffIdle

Приостанавливает выполнение запланированного задания, если компьютер становится активным (выходит из режима простоя) во время выполнения задания.

По умолчанию запланированное задание, которое приостанавливается при выходе компьютера из режима простоя, возобновляется, когда компьютер снова становится неактивным. Чтобы изменить это поведение по умолчанию, используйте параметр RestartOnIdleResume .

Параметр StopIfGoingOffIdle задает значение свойства StopIfGoingOffIdle запланированных заданий $true.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WakeToRun

Пробуждает компьютер из спящего состояния сна или гибернации в запланированное время запуска, чтобы он мог выполнить задание. По умолчанию если компьютер находится в режиме гибернации или сна в запланированное время запуска, задание не выполняется.

Параметр WakeToRun задает значение свойства WakeToRun запланированных заданий$true.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Входные данные

None

Невозможно передать объекты в этот командлет.

Выходные данные

ScheduledJobOptions

Этот командлет возвращает объект ScheduledJobOptions , представляющий созданные параметры.

Примечания

  • Вы можете использовать объект ScheduledJobOptions , который New-ScheduledJobOption создает в качестве значения параметра ScheduledJobOption командлета Register-ScheduledJob . Однако параметр ScheduledJobOption также может принимать хэш-табличное значение, указывающее свойства объекта ScheduledJobOptions и их значения, например:

    @{ShowInTaskScheduler=$False; RunElevated=$True; IdleDuration="00:05"}