Udostępnij za pośrednictwem


Disable-ScheduledJob

Wyłącza zaplanowane zadanie.

Składnia

Disable-ScheduledJob
       [-InputObject] <ScheduledJobDefinition>
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Disable-ScheduledJob
       [-Id] <Int32>
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Disable-ScheduledJob
       [-Name] <String>
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Opis

Polecenie cmdlet Disable-ScheduledJob tymczasowo wyłącza zaplanowane zadania. Wyłączenie zachowuje wszystkie właściwości zadania i nie wyłącza wyzwalaczy zadania, ale uniemożliwia automatyczne uruchamianie zaplanowanych zadań po wyzwoleniu. Możesz uruchomić wyłączone zaplanowane zadanie przy użyciu polecenia cmdlet Start-Job lub użyć wyłączonego zaplanowanego zadania jako szablonu.

Aby wyłączyć zaplanowane zadanie, polecenie cmdlet Disable-ScheduledJob ustawia właściwość Enabled zadania na False ($false). Aby ponownie włączyć zaplanowane zadanie, użyj polecenia cmdlet Enable-ScheduledJob.

Disable-ScheduledJob jest jedną z kolekcji poleceń cmdlet planowania zadań w module PSScheduledJob, który jest uwzględniony w Windows PowerShell.

Aby uzyskać więcej informacji na temat zaplanowanych zadań, zobacz temat Informacje w module PSScheduledJob. Zaimportuj moduł PSScheduledJob, a następnie wpisz polecenie: Get-Help about_Scheduled* lub zobacz about_Scheduled_Jobs.

To polecenie cmdlet zostało wprowadzone w Windows PowerShell 3.0.

Przykłady

Przykład 1. Wyłączanie zaplanowanego zadania

PS C:\> Disable-ScheduledJob -ID 2 -Passthru
Id         Name            Triggers        Command                                  Enabled
--         ----            --------        -------                                  -------
2          Inventory       {1, 2}          \\Srv01\Scripts\Get-FullInventory.ps1    False

To polecenie wyłącza zaplanowane zadanie o identyfikatorze 2 na komputerze lokalnym. Dane wyjściowe pokazują efekt polecenia.

Przykład 2. Wyłączanie wszystkich zaplanowanych zadań

PS C:\> Get-ScheduledJob | Disable-ScheduledJob -Passthru
Id         Name            Triggers        Command                                  Enabled
--         ----            --------        -------                                  -------
1          ArchiveProje... {}              C:\Scripts\Archive-DxProjects.ps1        False
2          Inventory       {1, 2}          \\Srv01\Scripts\Get-FullInventory.ps1    False
4          Test-HelpFiles  {1}             .\Test-HelpFiles.ps1                     False
5          TestJob         {1, 2}          .\Run-AllTests.ps1                       False

To polecenie wyłącza wszystkie zaplanowane zadania na komputerze lokalnym. Używa polecenia cmdlet Get-ScheduledJob, aby pobrać wszystkie zaplanowane zadanie i polecenie cmdlet Disable-ScheduledJob , aby je wyłączyć.

Zaplanowane zadanie można ponownie włączyć przy użyciu polecenia cmdlet Enable-ScheduledJob i uruchomić wyłączone zaplanowane zadanie przy użyciu polecenia cmdlet Start-Job.

Funkcja Disable-ScheduledJob nie generuje ostrzeżeń ani błędów, jeśli wyłączysz zaplanowane zadanie, które jest już wyłączone, dzięki czemu można wyłączyć wszystkie zaplanowane zadania bez warunków.

Przykład 3. Wyłączanie wybranych zaplanowanych zadań

PS C:\> Get-ScheduledJob | Where-Object {!$_.Credential} | Disable-ScheduledJob

To polecenie wyłącza zaplanowane zadanie nie zawiera poświadczeń. Zadania bez poświadczeń są uruchamiane z uprawnieniem użytkownika, który je utworzył.

Polecenie używa polecenia cmdlet Get-ScheduledJob do pobierania wszystkich zaplanowanych zadań na komputerze. Operator potoku wysyła zaplanowane zadania do polecenia cmdlet Where-Object, które wybiera zaplanowane zadania, które nie mają poświadczeń. Polecenie używa operatora not (!) i odwołuje się do właściwości Credential zaplanowanego zadania. Inny operator potoku wysyła wybrane zaplanowane zadania do polecenia cmdlet Disable-ScheduledJob , które je wyłącza.

Przykład 4. Wyłączanie zaplanowanych zadań na komputerze zdalnym

PS C:\> Invoke-Command -ComputerName Srv01, Srv10 -ScriptBlock {Disable-ScheduledJob -Name TestJob}

To polecenie wyłącza zaplanowane zadanie TestJob na dwóch komputerach zdalnych, Srv01 i Srv10.

Polecenie używa polecenia cmdlet Invoke-Command do uruchamiania polecenia Disable-ScheduledJob na komputerach Srv01 i Srv10. Polecenie używa parametru Name zadania Disable-ScheduledJob , aby wybrać zaplanowane zadanie TestJob na każdym komputerze.

Przykład 5. Wyłączanie zaplanowanego zadania według identyfikatora globalnego

The first command demonstrates one way of finding the GlobalID of a scheduled job. The command uses the Get-ScheduledJob cmdlet to get the scheduled jobs on the computer. A pipeline operator (|) sends the scheduled jobs to the Format-Table cmdlet, which displays the Name, GlobalID, and Command properties of each job in a table.
PS C:\> Get-ScheduledJob | Format-Table -Property Name, GlobalID, Command -Autosize
Name             GlobalId                             Command
----             --------                             -------
ArchiveProjects1 a26a0b3d-b4e6-44d3-8b95-8706ef621f7c C:\Scripts\Archive-DxProjects.ps1
Inventory        3ac37e5d-84c0-4a8f-9661-7e88ebb8f914 \\Srv01\Scripts\Get-FullInventory.ps1
Backup-Scripts   4d0cc6be-c082-48d1-baec-1bd8278f3c81  Copy-Item C:\CurrentScripts\*.ps1 -Destination C:\BackupScripts
Test-HelpFiles   d77020ca-f20d-42be-86c8-fc64df97db90 .\Test-HelpFiles.ps1
Test-HelpFiles   2f1606d2-c6cf-4bef-8b1c-ae36a9cc9934 .\Test-DomainHelpFiles.ps1

The second command uses the  Get-ScheduledJob cmdlet to get the scheduled jobs on the computer. A pipeline operator (|) sends the scheduled jobs to the Where-Object cmdlet, which selects the scheduled job with the specified global ID. Another pipeline operator sends the job to the **Disable-ScheduledJob** cmdlet, which disables it.
PS C:\> Get-ScheduledJob | Where-Object {$_.GlobalID = d77020ca-f20d-42be-86c8-fc64df97db90} | Disable-ScheduledJob

W tych przykładach pokazano, jak wyłączyć zaplanowane zadanie przy użyciu identyfikatora globalnego. Wartość właściwości GlobalID zaplanowanego zadania jest unikatowym identyfikatorem (GUID). Użyj wartości GlobalID, gdy wymagana jest precyzja, na przykład podczas wyłączania zaplanowanych zadań na wielu komputerach.

Parametry

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

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

-Id

Wyłącza zaplanowane zadanie z określonym numerem identyfikacyjnym (identyfikatorem). Wprowadź identyfikator zaplanowanego zadania.

Type:Int32
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

Określa zaplanowane zadanie do wyłączenia. Wprowadź zmienną zawierającą obiekty ScheduledJobDefinition lub wpisz polecenie lub wyrażenie, które pobiera obiekty ScheduledJobDefinition , takie jak polecenie Get-ScheduledJob. Można również potokować obiekt ScheduledJobDefinition do polecenia Disable-ScheduledJob.

Type:ScheduledJobDefinition
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Name

Wyłącza zaplanowane zadania z określonymi nazwami. Wprowadź nazwę zaplanowanego zadania. Obsługiwane są symbole wieloznaczne.

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-PassThru

Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie to polecenie cmdlet nie generuje żadnego wyniku.

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

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

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

Dane wejściowe

ScheduledJobDefinition

Zaplanowane zadanie można potokować do zadania Disable-ScheduledJob.

Dane wyjściowe

None or Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

Jeśli używasz parametru Passthru , funkcja Disable-ScheduledJob zwraca zaplanowane zadanie, które zostało wyłączone. W przeciwnym razie to polecenie cmdlet nie generuje żadnych danych wyjściowych.

Uwagi

  • Funkcja Disable-ScheduledJob nie generuje ostrzeżeń ani błędów, jeśli używasz go do wyłączenia zaplanowanego zadania, które jest już wyłączone.