Condividi tramite


Get-JobTrigger

Ottiene i trigger dei processi pianificati.

Sintassi

Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-InputObject] <ScheduledJobDefinition>
   [<CommonParameters>]
Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-Id] <Int32>
   [<CommonParameters>]
Get-JobTrigger
   [[-TriggerId] <Int32[]>]
   [-Name] <String>
   [<CommonParameters>]

Descrizione

Il Get-JobTrigger cmdlet ottiene i trigger di processo dei processi pianificati. È possibile usare questo comando per esaminare i trigger di processo o per inviare tramite pipe i trigger di processo ad altri cmdlet.

Un trigger di processo definisce una pianificazione o condizioni ricorrenti per l'avvio di un processo pianificato. I trigger di processo non vengono salvati su disco separatamente, ma fanno parte di un processo pianificato. Per ottenere un trigger di processo, specificare il processo pianificato che viene avviato dal trigger.

Usare i parametri del Get-JobTrigger cmdlet per identificare i processi pianificati. È possibile identificare i processi pianificati in base ai nomi o ai numeri di identificazione oppure immettendo o inviando tramite pipe oggetti ScheduledJob , ad esempio quelli restituiti dal Get-ScheduledJob cmdlet a Get-JobTrigger.

Get-JobTrigger è 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: Ottenere un trigger di processo in base al nome del processo pianificato

Get-JobTrigger -Name "BackupJob"

Il comando usa il parametro Name di Get-JobTrigger per ottenere i trigger di processo del BackupJob processo pianificato.

Esempio 2: Ottenere un trigger di processo in base all'ID

Nell'esempio viene usato il parametro ID di Get-JobTrigger per ottenere i trigger di processo di un processo pianificato.

Get-ScheduledJob

Id         Name            Triggers        Command                                  Enabled
--         ----            --------        -------                                  -------
1          ArchiveProjects {1}             \\Server\Share\Archive-Projects.ps1      True
2          Backup          {1,2}           \\Server\Share\Run-Backup.ps1            True
3          Test-HelpFiles  {1}             \\Server\Share\Test-HelpFiles.ps1        True
4          TestJob         {}              \\Server\Share\Run-AllTests.ps1          True

Get-JobTrigger -ID 3

Il primo comando usa il Get-ScheduledJob cmdlet per visualizzare i processi pianificati nel computer locale. La visualizzazione include gli ID dei processi pianificati.

Il secondo comando usa il Get-JobTrigger cmdlet per ottenere il trigger di processo per il processo (il Test-HelpFiles cui ID è 3).

Esempio 3: Ottenere i trigger di processo eseguendo il piping di un processo

Questo esempio ottiene i trigger di processo dei processi con nomi corrispondenti.

Get-ScheduledJob -Name *Backup*, *Archive* | Get-JobTrigger

Questo comando ottiene i trigger di processo di tutti i processi con Backup o Archive nei relativi nomi.

Esempio 4: Ottenere il trigger di processo di un processo in un computer remoto

Questo esempio ottiene i trigger di un processo pianificato in un computer remoto.

Invoke-Command -ComputerName Server01 { Get-ScheduledJob Backup | Get-JobTrigger -TriggerID 2 }

Il comando usa il Invoke-Command cmdlet per eseguire un comando nel computer Server01. Usa il Get-ScheduledJob cmdlet per ottenere il Backup processo pianificato, che invia tramite pipe al Get-JobTrigger cmdlet. Usa il parametro TriggerID per ottenere solo il secondo trigger.

Esempio 5: Ottenere tutti i trigger di processo

Questo esempio ottiene tutti i trigger di processo di tutti i processi pianificati nel computer locale.

Get-ScheduledJob | Get-JobTrigger |
    Format-Table -Property ID, Frequency, At, DaysOfWeek, Enabled, @{Label="ScheduledJob";Expression={$_.JobDefinition.Name}} -AutoSize

Id Frequency At                    DaysOfWeek Enabled ScheduledJob
-- --------- --                    ---------- ------- ------------
1    Weekly  9/28/2011 3:00:00 AM  {Monday}   True    Backup
1    Daily   9/27/2011 11:00:00 PM            True    Test-HelpFiles

Il comando usa per Get-ScheduledJob ottenere i processi pianificati nel computer locale e li invia tramite pipe a Get-JobTrigger, che ottiene il trigger di processo di ogni processo pianificato (se presente).

Per aggiungere il nome del processo pianificato alla visualizzazione del trigger di processo, il comando usa la funzionalità della proprietà calcolata del Format-Table cmdlet. Oltre alle proprietà del trigger di processo visualizzate per impostazione predefinita, il comando crea una nuova proprietà ScheduledJob che visualizza il nome del processo pianificato.

Esempio 6: Ottenere la proprietà trigger del processo di un processo pianificato

In questo esempio vengono illustrati metodi diversi per visualizzare la proprietà JobTrigger di un processo pianificato.

(Get-ScheduledJob Test-HelpFiles).JobTriggers
Get-ScheduledJob | foreach {$_.JobTriggers}

Il primo comando usa il Get-ScheduledJob cmdlet per ottenere il Test-HelpFiles processo pianificato. Usa quindi il metodo dot (.) per ottenere la proprietà JobTriggers del Test-HelpFiles processo pianificato.

Il secondo comando usa il Get-ScheduledJob cmdlet per ottenere tutti i processi pianificati nel computer locale. Usa il ForEach-Object cmdlet per ottenere il valore della proprietà JobTriggers di ogni processo pianificato.

I trigger di processo di un processo pianificato vengono archiviati nella proprietà JobTriggers del processo. Questo esempio mostra le alternative all'uso del Get-JobTrigger cmdlet per ottenere i trigger di processo. I risultati sono identici all'uso del Get-JobTrigger cmdlet e le tecniche possono essere usate in modo intercambiabile.

Esempio 7: Confrontare i trigger di processo

Get-ScheduledJob -Name ArchiveProjects | Get-JobTrigger | Tee-Object -Variable t1

Id         Frequency       Time                   DaysOfWeek              Enabled
--         ---------       ----                   ----------              -------
0          Daily           9/26/2011 3:00:00 AM                           True

Get-ScheduledJob -Name "Test-HelpFiles" | Get-JobTrigger | Tee-Object -Variable t2

Id         Frequency       Time                   DaysOfWeek              Enabled
--         ---------       ----                   ----------              -------
0          Daily           9/26/2011 3:00:00 AM                           True

$t1| Get-Member -Type Property | ForEach-Object { Compare-Object $t1 $t2 -Property $_.Name}

RandomDelay                                                 SideIndicator
-----------                                                 -------------
00:00:00                                                    =>
00:03:00                                                    <=

Il primo comando ottiene il trigger di processo del ArchiveProjects processo pianificato. Il comando invia tramite pipe il trigger del Tee-Object processo al cmdlet, che salva il trigger di $t1 processo nella variabile e lo visualizza nella riga di comando.

Il secondo comando ottiene il trigger di processo del Test-HelpFiles processo pianificato. Il comando invia tramite pipe il trigger del Tee-Object processo al cmdlet, che salva il trigger di $t2 processo nella variabile e lo visualizza nella riga di comando.

Il terzo comando confronta i trigger di processo nelle $t1 variabili e $t 2. Usa il Get-Member cmdlet per ottenere le proprietà del trigger di processo nella variabile $t 1. Invia tramite pipe le proprietà al ForEach-Object cmdlet , che confronta ogni proprietà con le proprietà del trigger di processo nella variabile in base al $t2 nome. Il comando invia quindi tramite pipe le proprietà diverse al Format-List cmdlet, che le visualizza in un elenco. L'output indica che, anche se i trigger del processo sembrano essere uguali, il trigger del HelpFiles processo include un ritardo casuale di tre (3) minuti.

Questo esempio illustra come confrontare i trigger di processo di due processi pianificati.

Parametri

-Id

Specifica il numero di identificazione di un processo pianificato. Get-JobTrigger ottiene il trigger di processo del processo pianificato specificato.

Per ottenere il numero di identificazione dei processi pianificati nel computer locale o in un computer remoto, usare il Get-ScheduledJob cmdlet .

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

-InputObject

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

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

-Name

Specifica il nome di un processo pianificato. Get-JobTrigger ottiene il trigger di processo del processo pianificato specificato. Sono supportati caratteri jolly.

Per ottenere i nomi dei processi pianificati nel computer locale o in un computer remoto, usare il Get-ScheduledJob cmdlet .

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

-TriggerId

Ottiene i trigger di processo specificati. Immettere gli ID trigger di uno o più trigger di un processo pianificato. Usare questo parametro quando il processo pianificato specificato dai parametri Name, ID o InputObject include più trigger di processo.

Type:Int32[]
Position:1
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

ScheduledJobDefinition

È possibile inviare tramite pipe un processo pianificato a questo cmdlet.

Output

ScheduledJobTrigger

Questo cmdlet restituisce il trigger del processo pianificato.