New-ScheduledJobOption
Tworzy obiekt zawierający zaawansowane opcje zaplanowanego zadania.
Składnia
New-ScheduledJobOption
[-RunElevated]
[-HideInTaskScheduler]
[-RestartOnIdleResume]
[-MultipleInstancePolicy <TaskMultipleInstancePolicy>]
[-DoNotAllowDemandStart]
[-RequireNetwork]
[-StopIfGoingOffIdle]
[-WakeToRun]
[-ContinueIfGoingOnBattery]
[-StartIfOnBattery]
[-IdleTimeout <TimeSpan>]
[-IdleDuration <TimeSpan>]
[-StartIfIdle]
[<CommonParameters>]
Opis
Polecenie New-ScheduledJobOption
cmdlet tworzy obiekt zawierający zaawansowane opcje zaplanowanego zadania.
Możesz użyć obiektu ScheduledJobOptions , który New-ScheduledJobOption
powraca do ustawiania opcji zadania dla nowego lub istniejącego zaplanowanego zadania. Alternatywnie można ustawić opcje zadania przy użyciu Get-ScheduledJobOption
polecenia cmdlet , aby uzyskać opcje zadania istniejącego zaplanowanego zadania lub przy użyciu wartości tabeli skrótu do reprezentowania opcji zadania.
Bez parametrów New-ScheduledJobOption
generuje obiekt zawierający wartości domyślne dla wszystkich opcji. Ponieważ wszystkie właściwości z wyjątkiem właściwości JobDefinition można edytować, można użyć wynikowego obiektu jako szablonu i utworzyć standardowe obiekty opcji dla przedsiębiorstwa.
Podczas tworzenia zaplanowanych zadań i ustawiania opcji zaplanowanego zadania przejrzyj wartości domyślne wszystkich zaplanowanych opcji zadań. Zaplanowane zadania są uruchamiane tylko wtedy, gdy wszystkie warunki ustawione dla ich wykonywania są spełnione.
New-ScheduledJobOption
jest jedną z kolekcji poleceń cmdlet planowania zadań w module PSScheduledJob, który znajduje się w programie Windows PowerShell.
Aby uzyskać więcej informacji na temat zaplanowanych zadań, zobacz temat Informacje w module PSScheduledJob. Zaimportuj moduł PSScheduledJob, a następnie wpisz: Get-Help about_Scheduled*
lub zobacz about_Scheduled_Jobs.
To polecenie cmdlet zostało wprowadzone w programie Windows PowerShell 3.0.
Przykłady
Przykład 1. Tworzenie obiektu opcji zaplanowanego zadania z wartościami domyślnymi
W tym przykładzie tworzony jest obiekt opcji zaplanowanego zadania z wartościami domyślnymi.
New-ScheduledJobOption
Przykład 2. Tworzenie obiektu opcji zaplanowanego zadania z wartościami niestandardowymi
W tym przykładzie tworzony jest obiekt opcji zaplanowanego zadania z wartościami niestandardowymi
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 :
Następujące polecenie tworzy obiekt zaplanowanego zadania, który wymaga sieci i uruchamia zaplanowane zadanie, nawet jeśli komputer nie jest podłączony do zasilania ac.
Dane wyjściowe pokazują, że parametr RequireNetwork zmienił wartość właściwości RunWithoutNetwork na $false
, a parametr StartIfOnBattery zmienił wartość właściwości StartIfOnBatteries na $true
.
Przykład 3. Ustawianie opcji dla nowego zaplanowanego zadania
W tym przykładzie pokazano, jak użyć obiektu ScheduledJobOptions , który New-ScheduledJobOption
powraca do ustawiania opcji dla nowego zaplanowanego zadania.
$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
Pierwsze polecenie tworzy obiekt ScheduledJobOptions z parametrem RunElevated . Zapisuje obiekt w zmiennej $runAsAdmin
.
Drugie polecenie używa Register-ScheduledJob
polecenia cmdlet do utworzenia nowego zaplanowanego zadania. Wartość parametru ScheduledJobOption jest obiektem opcji w wartości zmiennej $runAsAdmin
.
Trzecie polecenie używa Get-ScheduledJobOption
polecenia cmdlet , aby uzyskać opcje zadania zaplanowanego zadania tworzenia kopii zapasowej. Dane wyjściowe polecenia cmdlet pokazują, że właściwość RunElevated jest ustawiona na $true
, a właściwość JobDefinition obiektu opcji zadania jest teraz wypełniana obiektem zaplanowanego zadania dla zaplanowanego zadania tworzenia kopii zapasowej.
Przykład 4. Sortowanie właściwości obiektu opcji zaplanowanego zadania
W tym przykładzie pokazano, jak sortować właściwości obiektu ScheduledJobOptions w kolejności alfabetycznej, aby ułatwić odczytywanie.
$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
Pierwsze polecenie używa New-ScheduledJobOption
polecenia cmdlet do utworzenia obiektu ScheduledJobOptions . Polecenie używa parametru WakeToRun i zapisuje wynikowy obiekt w zmiennej $options
.
Aby uzyskać właściwości $Options jako obiekty, drugie polecenie używa właściwości PSObject wszystkich obiektów programu Windows PowerShell i jego właściwości Właściwości. Następnie polecenie potokuje obiekty właściwości do Sort-Object
polecenia cmdlet, które sortuje właściwości w kolejności alfabetycznej według nazwy, a następnie do Format-Table
polecenia cmdlet, które wyświetla nazwy i wartości właściwości w tabeli.
Ten format znacznie ułatwia znalezienie właściwości WakeToRun obiektu ScheduledJobOptions w $options
systemie i sprawdzenia, czy jego wartość została zmieniona z $false
na $true
.
Parametry
-ContinueIfGoingOnBattery
Nie należy zatrzymywać zaplanowanego zadania, jeśli komputer przełącza się na zasilanie baterii (odłącza się od zasilania prądu zasilającego), gdy zadanie jest uruchomione. Domyślnie zaplanowane zadania są zatrzymywane, gdy komputer rozłącza się z zasilaniem ac.
Parametr ContinueIfGoingOnBattery ustawia wartość właściwości StopIfGoingOnBatteries zaplanowanych zadań na $true
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DoNotAllowDemandStart
Uruchom zadanie tylko wtedy, gdy zostanie ono wyzwolone. Użytkownicy nie mogą uruchomić zadania ręcznie, na przykład za pomocą funkcji Uruchom w harmonogramie zadań.
Ten parametr ma wpływ tylko na harmonogram zadań. Nie uniemożliwia użytkownikom korzystania z Start-Job
polecenia cmdlet w celu uruchomienia zadania.
Parametr DoNotAllowDemandStart ustawia wartość właściwości DoNotAllowDemandStart zaplanowanych zadań na $true
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-HideInTaskScheduler
Nie wyświetlaj zadania w harmonogramie zadań. Ta wartość ma wpływ tylko na komputer, na którym jest uruchamiane zadanie. Domyślnie zaplanowane zadania są wyświetlane w harmonogramie zadań.
Nawet jeśli zadanie jest ukryte, użytkownicy mogą wyświetlać zadanie, wybierając opcję Pokaż ukryte zadania w harmonogramie zadań.
Parametr HideInTaskScheduler ustawia wartość właściwości ShowInTaskScheduler zaplanowanych zadań na $false
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-IdleDuration
Określa, jak długo komputer musi być w stanie bezczynności przed uruchomieniem zadania. Domyślna wartość wynosi 10 minut. Jeśli komputer nie jest bezczynny dla określonego czasu trwania przed wygaśnięciem wartości IdleTimeout , zaplanowane zadanie nie zostanie uruchomione do następnego zaplanowanego czasu, jeśli istnieje.
Wprowadź obiekt TimeSpan, taki jak jeden wygenerowany przez New-TimeSpan
polecenie cmdlet, lub wprowadź wartość w <formacie hours>:minutes>:<<seconds>, który jest automatycznie konwertowany na obiekt TimeSpan.
Aby włączyć tę wartość, użyj parametru StartIfIdle . Domyślnie właściwość StartIfNotIdle zaplanowanych zadań jest ustawiona na $true
, a program Windows PowerShell ignoruje wartości IdleDuration i IdleTimeout .
Typ: | TimeSpan |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-IdleTimeout
Określa, jak długo zaplanowane zadanie czeka na bezczynność komputera. Jeśli ten limit czasu wygaśnie, zanim komputer pozostanie bezczynny przez okres określony przez parametr IdleDuration , zadanie nie zostanie uruchomione do następnego zaplanowanego czasu, jeśli istnieje. Wartość domyślna to jedna godzina.
Wprowadź obiekt TimeSpan, taki jak jeden wygenerowany przez New-TimeSpan
polecenie cmdlet, lub wprowadź wartość w <formacie hours>:minutes>:<<seconds>, który jest automatycznie konwertowany na obiekt TimeSpan.
Aby włączyć tę wartość, użyj parametru StartIfIdle . Domyślnie właściwość StartIfNotIdle zaplanowanych zadań jest ustawiona na $true
, a program Windows PowerShell ignoruje wartości IdleDuration i IdleTimeout.
Typ: | TimeSpan |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-MultipleInstancePolicy
Określa, w jaki sposób system odpowiada na żądanie uruchomienia wystąpienia zaplanowanego zadania, gdy jest uruchomione inne wystąpienie zadania. Domyślna wartość to IgnoreNew
. Dopuszczalne wartości tego parametru to:
IgnoreNew
— Nowe wystąpienie zadania jest ignorowane.Parallel
— Nowe wystąpienie zadania jest uruchamiane natychmiast.Queue
— Nowe wystąpienie zadania jest uruchamiane natychmiast po zakończeniu bieżącego wystąpienia.StopExisting
— Bieżące wystąpienie zadania zostanie zatrzymane i zostanie uruchomione nowe wystąpienie.
Aby uruchomić zadanie, należy spełnić wszystkie warunki harmonogramu zadań. Jeśli na przykład warunki ustawione przez parametry RequireNetwork, IdleDuration i IdleTimeout nie są spełnione, wystąpienie zadania nie zostanie uruchomione, niezależnie od wartości tego parametru.
Typ: | TaskMultipleInstancePolicy |
Dopuszczalne wartości: | None, IgnoreNew, Parallel, Queue, StopExisting |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RequireNetwork
Uruchamia zaplanowane zadanie tylko wtedy, gdy połączenia sieciowe są dostępne.
Jeśli określisz ten parametr i sieć nie będzie dostępna w zaplanowanym czasie rozpoczęcia, zadanie nie zostanie uruchomione do następnego zaplanowanego czasu rozpoczęcia, jeśli istnieje.
Parametr RequireNetwork ustawia wartość właściwości RunWithoutNetwork zaplanowanych zadań na $false
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RestartOnIdleResume
Uruchamia zaplanowane zadanie, gdy komputer stanie się bezczynny. Ten parametr działa z parametrem StopIfGoingOffIdle , który zawiesza uruchomione zaplanowane zadanie, jeśli komputer stanie się aktywny (pozostawia stan bezczynności).
Parametr RestartOnIdleResume ustawia wartość właściwości RestartOnIdleResume zaplanowanych zadań na $true
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RunElevated
Uruchamia zaplanowane zadanie z uprawnieniami członka grupy Administratorzy na komputerze, na którym jest uruchamiane zadanie.
Aby włączyć zaplanowane zadanie do uruchomienia z uprawnieniami administratora, użyj parametru Credential polecenia Register-ScheduledJob
, aby podać jawne poświadczenia dla zadania.
Parametr RunElevated ustawia wartość właściwości RunElevated zaplanowanych zadań na $true
.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-StartIfIdle
Uruchamia zaplanowane zadanie, jeśli komputer był bezczynny przez czas określony przez parametr IdleDuration przed upływem czasu określonego przez parametr IdleTimeout .
Domyślnie parametry IdleDuration i IdleTimeout są ignorowane, a zadanie rozpoczyna się w zaplanowanym czasie rozpoczęcia, nawet jeśli komputer jest zajęty.
Jeśli określisz ten parametr, a komputer jest zajęty (nie bezczynny) w zaplanowanym czasie rozpoczęcia, zadanie nie zostanie uruchomione do następnego zaplanowanego czasu rozpoczęcia, jeśli istnieje.
Parametr StartIfIdle ustawia wartość właściwości StartIfNotIdle zaplanowanych zadań na $false
.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-StartIfOnBattery
Uruchamia zaplanowane zadanie, nawet jeśli komputer jest uruchomiony na bateriach w zaplanowanym czasie rozpoczęcia.
Domyślna wartość to $false
.
Parametr StartIfOnBattery ustawia wartość właściwości StartIfOnBatteries zaplanowanych zadań na $true
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-StopIfGoingOffIdle
Zawiesza uruchomione zaplanowane zadanie, jeśli komputer stanie się aktywny (nie bezczynny), gdy zadanie jest uruchomione.
Domyślnie zaplanowane zadanie, które jest zawieszone, gdy komputer staje się aktywny wznawia, gdy komputer ponownie stanie się bezczynny. Aby zmienić to zachowanie domyślne, użyj parametru RestartOnIdleResume .
Parametr StopIfGoingOffIdle ustawia wartość właściwości StopIfGoingOffIdle zaplanowanych zadań na $true
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-WakeToRun
Wznawia komputer ze stanu Hibernate lub Uśpienia w zaplanowanym czasie rozpoczęcia, aby mógł uruchomić zadanie. Domyślnie, jeśli komputer jest w stanie Hibernacji lub Uśpienia w zaplanowanym czasie rozpoczęcia, zadanie nie zostanie uruchomione.
Parametr WakeToRun ustawia wartość właściwości WakeToRun zaplanowanych zadań na $true
wartość .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
None
Nie można potokować obiektów do tego polecenia cmdlet.
Dane wyjściowe
To polecenie cmdlet zwraca obiekt ScheduledJobOptions reprezentujący utworzone opcje.
Uwagi
Możesz użyć obiektu ScheduledJobOptions, który
New-ScheduledJobOption
tworzy jako wartość parametruRegister-ScheduledJob
ScheduledJobOption polecenia cmdlet. Jednak parametr ScheduledJobOption może również przyjąć wartość tabeli skrótu, która określa właściwości obiektu ScheduledJobOptions i ich wartości, takie jak:@{ShowInTaskScheduler=$False; RunElevated=$True; IdleDuration="00:05"}
Linki powiązane
- Add-JobTrigger
- Disable-JobTrigger
- Disable-ScheduledJob
- Enable-JobTrigger
- Enable-ScheduledJob
- Get-JobTrigger
- Get-ScheduledJob
- Get-ScheduledJobOption
- New-JobTrigger
- New-ScheduledJobOption
- Register-ScheduledJob
- Remove-JobTrigger
- Set-JobTrigger
- Set-ScheduledJob
- Set-ScheduledJobOption
- Unregister-ScheduledJob