Condividi tramite


Disable-ScheduledJob

Disabilita un processo pianificato.

Sintassi

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

Descrizione

Il Disable-ScheduledJob cmdlet disabilita temporaneamente i processi pianificati. La disabilitazione mantiene tutte le proprietà del processo e non ne disabilita i trigger, ma evita che i processi pianificati vengano avviati automaticamente all'attivazione. È possibile avviare un processo pianificato disabilitato usando il Start-Job cmdlet o un processo pianificato disabilitato come modello.

Per disabilitare un processo pianificato, il Disable-ScheduledJob cmdlet imposta la proprietà Enabled del processo pianificato su False. Per riabilitare il processo pianificato, usare il Enable-ScheduledJob cmdlet .

Disable-ScheduledJob è una raccolta di cmdlet di pianificazione dei processi nel modulo PSScheduledJob incluso in Windows PowerShell.

Per altre informazioni sui lavori pianificati, vedere gli argomenti Informazioni nel modulo PSScheduledJob. Importare il modulo PSScheduledJob e quindi digitare: Get-Help about_Scheduled* o visualizzare about_Scheduled_Jobs.

Questo cmdlet è stato introdotto in Windows PowerShell 3.0.

Esempio

Esempio 1: Disabilitare un processo pianificato

In questo esempio viene disabilitato un processo pianificato nel computer locale.

Disable-ScheduledJob -ID 2 -Passthru

Questo comando disabilita il processo pianificato con ID 2 nel computer locale.

Esempio 2: Disabilitare tutti i processi pianificati

In questo esempio vengono disabilitati tutti i processi pianificati nel computer locale.

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

Il Get-ScheduledJob cmdlet per ottenere tutti i processi pianificati e li invia tramite pipe al Disable-ScheduledJob cmdlet per disabilitarli.

È possibile riabilitare il processo pianificato usando il Enable-ScheduledJob cmdlet ed eseguire un processo pianificato disabilitato usando il Start-Job cmdlet .

Disable-ScheduledJob non genera avvisi o errori se si disabilita un processo pianificato già disabilitato, quindi è possibile disabilitare tutti i processi pianificati senza condizioni.

Esempio 3: Disabilitare i processi pianificati selezionati

Questo esempio disabilita il processo pianificato non include credenziali.

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

I processi senza credenziali vengono eseguiti con l'autorizzazione dell'utente che li ha creati.

Il comando usa il Get-ScheduledJob cmdlet per ottenere tutti i processi pianificati nel computer. Un operatore pipeline invia i processi pianificati al Where-Object cmdlet , che seleziona i processi pianificati che non dispongono di credenziali. Il comando usa l'operatore not (!) e fa riferimento alla proprietà Credential del processo pianificato. Un altro operatore pipeline invia i processi pianificati selezionati al Disable-ScheduledJob cmdlet, che li disabilita.

Esempio 4: Disabilitare i processi pianificati in un computer remoto

In questo esempio viene disabilitato un processo pianificato in due computer remoti.

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

Il comando usa il Invoke-Command cmdlet per eseguire un Disable-ScheduledJob comando nei computer Srv01 e Srv10. Il comando usa il parametro Name di Disable-ScheduledJob per selezionare il processo pianificato TestJob in ogni computer.

Esempio 5: Disabilitare un processo pianificato in base all'ID globale

Questo esempio mostra come disabilitare un processo pianificato usando l'identificatore globale. Il valore della proprietà GlobalID di un processo pianificato è un identificatore univoco (GUID). Usare il valore GlobalID quando è necessaria una maggiore precisione, ad esempio quando si disabilitano i processi pianificati in più computer.

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

Il primo comando illustra un modo per trovare l'ID globale di un processo pianificato. Il comando usa il Get-ScheduledJob cmdlet per ottenere i processi pianificati nel computer. Un operatore pipeline (|) invia i processi pianificati al Format-Table cmdlet , che visualizza le proprietà Name, GlobalID e Command di ogni processo in una tabella.

Il secondo comando usa il Get-ScheduledJob cmdlet per ottenere i processi pianificati nel computer. Un operatore pipeline (|) invia i processi pianificati al Where-Object cmdlet , che seleziona il processo pianificato con l'ID globale specificato. Un altro operatore pipeline invia il processo al Disable-ScheduledJob cmdlet , che lo disabilita.

Parametri

-Confirm

Richiede conferma prima di eseguire il cmdlet.

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

-Id

Disabilita il processo pianificato con il numero di identificazione (ID) specificato. Immettere l'ID di un processo pianificato.

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

-InputObject

Specifica il processo pianificato da disabilitare. Immettere una variabile contenente oggetti ScheduledJobDefinition o digitare un comando o un'espressione che ottiene oggetti ScheduledJobDefinition , ad esempio un Get-ScheduledJob comando. È anche possibile inviare tramite pipe un oggetto ScheduledJobDefinition a Disable-ScheduledJob.

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

-Name

Disabilita i processi pianificati con i nomi specificati. Immettere il nome di un processo pianificato. Sono supportati caratteri jolly.

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

-PassThru

Restituisce un oggetto che rappresenta l'elemento in uso. Per impostazione predefinita, il cmdlet non genera alcun output.

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

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

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

Input

ScheduledJobDefinition

È possibile inviare tramite pipe un processo pianificato a Disable-ScheduledJob.

Output

None

Per impostazione predefinita, questo cmdlet non restituisce alcun output.

ScheduledJobDefinition

Quando si usa il parametro PassThru , questo cmdlet restituisce il processo pianificato disabilitato.

Note

  • Disable-ScheduledJob non genera avvisi o errori se lo si usa per disabilitare un processo pianificato già disabilitato.