Dela via


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 anger cmdleten Disable-ScheduledJob egenskapen Enabled för det schemalagda jobbet till False ($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 Om ämnen i modulen PSScheduledJob. Importera PSScheduledJob-modulen och skriv sedan: Get-Help about_Scheduled* eller se about_Scheduled_Jobs.

Denna cmdlet introducerades i Windows PowerShell 3.0.

Exempel

Exempel 1: Inaktivera ett schemalagt jobb

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

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

Exempel 2: Inaktivera alla schemalagda jobb

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

Det här kommandot inaktiverar alla schemalagda jobb på den lokala datorn. Den använder cmdleten Get-ScheduledJob för att hämta alla schemalagda jobb och cmdleten Disable-ScheduledJob för att inaktivera dem.

Du kan återaktivera det schemalagda jobbet 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 valda schemalagda jobb

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

Det här kommandot inaktiverar schemalagt jobb som inte innehåller någon autentiseringsuppgift. Jobb utan autentiseringsuppgifter körs med behörighet för den användare 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 , som inaktiverar dem.

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

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

Det här kommandot inaktiverar det schemalagda jobbet TestJob på två fjärrdatorer, Srv01 och Srv10.

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

Exempel 5: Inaktivera ett schemalagt jobb med dess globala ID

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

Det här exemplet 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 värdet GlobalID när precision krävs, till exempel när du inaktiverar schemalagda jobb på flera datorer.

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: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 denna cmdlet inga utdata.

Type:SwitchParameter
Position:Named
Default value:False
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

ScheduledJobDefinition

Du kan skicka ett schemalagt jobb till Disable-ScheduledJob.

Utdata

None or Microsoft.PowerShell.ScheduledJob.ScheduledJobDefinition

Om du använder parametern Passthru returnerar Disable-ScheduledJob det schemalagda jobb som inaktiverades. Annars genererar denna cmdlet inga utdata.

Kommentarer

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