Disable-ScheduledJob

Inaktiverar ett schemalagt jobb.

Syntax

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

Description

Cmdleten Disable-ScheduledJob inaktiverar tillfälligt schemalagda jobb. Inaktivering bevarar alla jobbegenskaper och inaktiverar inte jobbutlösare, men förhindrar att de schemalagda jobben startas automatiskt när de utlöses. Du kan starta ett inaktiverat schemalagt jobb med hjälp av cmdleten Start-Job eller använda ett inaktiverat schemalagt jobb som mall.

Om du vill inaktivera ett schemalagt jobb Disable-ScheduledJob anger cmdleten egenskapen Aktiverad för det schemalagda jobbet till False. Om du vill återaktivera det schemalagda jobbet använder du cmdleten Enable-ScheduledJob .

Disable-ScheduledJob är en av en samling cmdletar för jobbschemaläggning i modulen PSScheduledJob som ingår i Windows PowerShell.

Mer information om schemalagda jobb finns i Avsnittet om i modulen PSScheduledJob. Importera modulen PSScheduledJob och skriv sedan: Get-Help about_Scheduled* eller se about_Scheduled_Jobs.

Den här cmdleten introducerades i Windows PowerShell 3.0.

Exempel

Exempel 1: Inaktivera ett schemalagt jobb

Det här exemplet inaktiverar ett schemalagt jobb på den lokala datorn.

Disable-ScheduledJob -ID 2 -Passthru

Det här kommandot inaktiverar det schemalagda jobbet med ID 2 på den lokala datorn.

Exempel 2: Inaktivera alla schemalagda jobb

Det här exemplet inaktiverar alla schemalagda jobb på den lokala datorn.

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

Cmdleten Get-ScheduledJob som hämtar alla schemalagda jobb och skickar dem till cmdleten Disable-ScheduledJob för att inaktivera dem.

Du kan återaktivera schemalagt jobb med hjälp av cmdleten Enable-ScheduledJob och köra ett inaktiverat schemalagt jobb med hjälp av cmdleten Start-Job .

Disable-ScheduledJob genererar inte varningar eller fel om du inaktiverar ett schemalagt jobb som redan är inaktiverat, så du kan inaktivera alla schemalagda jobb utan villkor.

Exempel 3: Inaktivera markerade schemalagda jobb

Det här exemplet inaktiverar schemalagt jobb som inte innehåller någon autentiseringsuppgift.

Get-ScheduledJob | Where-Object {!$_.Credential} | Disable-ScheduledJob

Jobb utan autentiseringsuppgifter körs med behörigheten för användaren som skapade dem.

Kommandot använder cmdleten Get-ScheduledJob för att hämta alla schemalagda jobb på datorn. En pipelineoperator skickar de schemalagda jobben till cmdleten Where-Object , som väljer schemalagda jobb som inte har autentiseringsuppgifter. Kommandot använder operatorn inte (!) och refererar till egenskapen Credential för det schemalagda jobbet. En annan pipelineoperator skickar de valda schemalagda jobben till cmdleten Disable-ScheduledJob , vilket inaktiverar dem.

Exempel 4: Inaktivera schemalagda jobb på en fjärrdator

Det här exemplet inaktiverar ett schemalagt jobb på två fjärrdatorer.

Invoke-Command -ComputerName Srv01, Srv10 -ScriptBlock {Disable-ScheduledJob -Name TestJob}

Kommandot använder cmdleten Invoke-Command för att köra ett Disable-ScheduledJob kommando på datorerna Srv01 och Srv10. Kommandot använder parametern Disable-ScheduledJob Namn för för att välja det schemalagda TestJob-jobbet på varje dator.

Exempel 5: Inaktivera ett schemalagt jobb med dess globala ID

De här exemplen visar hur du inaktiverar ett schemalagt jobb med hjälp av dess globala identifierare. Värdet för egenskapen GlobalID för ett schemalagt jobb är en unik identifierare (GUID). Använd GlobalID-värdet när precision krävs, till exempel när du inaktiverar schemalagda jobb på flera datorer.

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

Get-ScheduledJob | Where-Object {$_.GlobalID = d77020ca-f20d-42be-86c8-fc64df97db90} | Disable-ScheduledJob

Det första kommandot visar ett sätt att hitta GlobalID för ett schemalagt jobb. Kommandot använder cmdleten Get-ScheduledJob för att hämta schemalagda jobb på datorn. En pipelineoperator (|) skickar de schemalagda jobben till cmdleten Format-Table , som visar egenskaperna Namn, GlobalID och Kommando för varje jobb i en tabell.

Det andra kommandot använder cmdleten Get-ScheduledJob för att hämta schemalagda jobb på datorn. En pipelineoperator (|) skickar de schemalagda jobben till cmdleten Where-Object , som väljer det schemalagda jobbet med det angivna globala ID:t. En annan pipelineoperator skickar jobbet till cmdleten Disable-ScheduledJob , vilket inaktiverar det.

Parametrar

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

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

-Id

Inaktiverar det schemalagda jobbet med det angivna identifieringsnumret (ID). Ange ID för ett schemalagt jobb.

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

-InputObject

Anger det schemalagda jobbet som ska inaktiveras. Ange en variabel som innehåller ScheduledJobDefinition-objekt eller skriv ett kommando eller uttryck som hämtar ScheduledJobDefinition-objekt, till exempel ett Get-ScheduledJob kommando. Du kan också skicka ett ScheduledJobDefinition-objekt till Disable-ScheduledJob.

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

-Name

Inaktiverar schemalagda jobb med de angivna namnen. Ange namnet på ett schemalagt jobb. Jokertecken stöds.

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

-PassThru

Returnerar ett objekt som representerar det objekt som du arbetar med. Som standard genererar den här cmdleten inga utdata.

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

-WhatIf

Visar vad som skulle hända om cmdleten kördes. Cmdleten körs inte.

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

Indata

Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

Du kan skicka ett schemalagt jobb till Disable-ScheduledJob.

Utdata

None

Som standard returnerar den här cmdleten inga utdata.

Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

När du använder parametern PassThru returnerar den här cmdleten det schemalagda jobb som är inaktiverat.

Kommentarer

  • Disable-ScheduledJob genererar inte varningar eller fel om du använder det för att inaktivera ett schemalagt jobb som redan är inaktiverat.