Compartir a través de


Get-JobTrigger

Obtiene los desencadenadores de trabajo de los trabajos programados.

Sintaxis

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

Description

El Get-JobTrigger cmdlet obtiene los desencadenadores de trabajo de los trabajos programados. Este comando se puede utilizar para examinar los desencadenadores de trabajo o para canalizar los desencadenadores a otros cmdlets.

Un desencadenador de trabajo define una programación o condiciones periódicas para iniciar un trabajo programado. Los desencadenadores de trabajo no se guardan en el disco de forma independiente, sino que forman parte de un trabajo programado. Para obtener un desencadenador de trabajo, especifique el trabajo programado que se inicia mediante el desencadenador.

Use los parámetros del Get-JobTrigger cmdlet para identificar los trabajos programados. Puede identificar los trabajos programados por sus nombres o números de identificación, o si escribe o canaliza objetos ScheduledJob , como los devueltos por el Get-ScheduledJob cmdlet, a Get-JobTrigger.

Get-JobTrigger es una de una colección de cmdlets de programación de trabajos en el módulo PSScheduledJob que se incluye en Windows PowerShell.

Para más información sobre los trabajos programados, vea los temas Acerca de en el módulo PSScheduledJob. Importe el módulo PSScheduledJob y escriba: Get-Help about_Scheduled* o vea about_Scheduled_Jobs.

Este cmdlet se introdujo en Windows PowerShell 3.0.

Ejemplos

Ejemplo 1: Obtención de un desencadenador de trabajo por nombre de trabajo programado

Get-JobTrigger -Name "BackupJob"

El comando usa el parámetro Name de Get-JobTrigger para obtener los desencadenadores de trabajo del BackupJob trabajo programado.

Ejemplo 2: Obtención de un desencadenador de trabajo por identificador

En el ejemplo se usa el parámetro ID de Get-JobTrigger para obtener los desencadenadores de trabajo de un trabajo programado.

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

El primer comando usa el Get-ScheduledJob cmdlet para mostrar los trabajos programados en el equipo local. La pantalla incluye los identificadores de los trabajos programados.

El segundo comando usa el Get-JobTrigger cmdlet para obtener el desencadenador de trabajo para el Test-HelpFiles trabajo (cuyo identificador es 3).

Ejemplo 3: Obtención de desencadenadores de trabajo mediante la canalización de un trabajo

En este ejemplo se obtienen desencadenadores de trabajos de trabajos que tienen nombres coincidentes.

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

Este comando obtiene los desencadenadores de trabajo de todos los trabajos que tienen Backup o Archive en sus nombres.

Ejemplo 4: Obtener el desencadenador de trabajo de un trabajo en un equipo remoto

En este ejemplo se obtienen los desencadenadores de un trabajo programado en un equipo remoto.

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

El comando usa el Invoke-Command cmdlet para ejecutar un comando en el equipo Server01. Usa el Get-ScheduledJob cmdlet para obtener el Backup trabajo programado, que canaliza al Get-JobTrigger cmdlet . Usa el parámetro TriggerID para obtener solo el segundo desencadenador.

Ejemplo 5: Obtener todos los desencadenadores de trabajo

En este ejemplo se obtienen todos los desencadenadores de trabajo de todos los trabajos programados en el equipo local.

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

El comando usa Get-ScheduledJob para obtener los trabajos programados en el equipo local y los canaliza a Get-JobTrigger, que obtiene el desencadenador de trabajo de cada trabajo programado (si existe).

Para agregar el nombre del trabajo programado a la presentación del desencadenador de trabajo, el comando usa la característica de propiedad calculada del Format-Table cmdlet . Además de las propiedades del desencadenador de trabajo que se muestran de forma predeterminada, el comando crea una nueva propiedad ScheduledJob que muestra el nombre del trabajo programado.

Ejemplo 6: Obtención de la propiedad del desencadenador de trabajo de un trabajo programado

En este ejemplo se muestran distintos métodos para ver la propiedad JobTrigger de un trabajo programado.

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

El primer comando usa el Get-ScheduledJob cmdlet para obtener el Test-HelpFiles trabajo programado. A continuación, usa el método dot (.) para obtener la propiedad JobTriggers del Test-HelpFiles trabajo programado.

El segundo comando usa el Get-ScheduledJob cmdlet para obtener todos los trabajos programados en el equipo local. Usa el ForEach-Object cmdlet para obtener el valor de la propiedad JobTriggers de cada trabajo programado.

Los desencadenadores de trabajo de un trabajo programado se almacenan en la propiedad JobTriggers del trabajo. En este ejemplo se muestran alternativas al uso del Get-JobTrigger cmdlet para obtener desencadenadores de trabajo. Los resultados son idénticos al uso del Get-JobTrigger cmdlet y las técnicas se pueden usar indistintamente.

Ejemplo 7: Comparación de desencadenadores de trabajo

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                                                    <=

El primer comando obtiene el desencadenador de trabajo del ArchiveProjects trabajo programado. El comando canaliza el desencadenador de trabajo al Tee-Object cmdlet , que guarda el desencadenador de trabajo en la $t1 variable y lo muestra en la línea de comandos.

El segundo comando obtiene el desencadenador de trabajo del Test-HelpFiles trabajo programado. El comando canaliza el desencadenador de trabajo al Tee-Object cmdlet , que guarda el desencadenador de trabajo en la $t2 variable y lo muestra en la línea de comandos.

El tercer comando compara los desencadenadores de trabajo en las $t1 variables y $t 2. Usa el Get-Member cmdlet para obtener las propiedades del desencadenador de trabajo en la variable $t 1. Canaliza las propiedades al ForEach-Object cmdlet , que compara cada propiedad con las propiedades del desencadenador de trabajo en la $t2 variable por nombre. A continuación, el comando canaliza las propiedades diferentes al Format-List cmdlet , que las muestra en una lista. La salida indica que, aunque los desencadenadores de trabajo parecen ser los mismos, el HelpFiles desencadenador de trabajo incluye un retraso aleatorio de tres (3) minutos.

En este ejemplo se muestra cómo comparar los desencadenadores de dos trabajos programados.

Parámetros

-Id

Especifica el número de identificación de un trabajo programado. Get-JobTrigger obtiene el desencadenador de trabajo del trabajo programado especificado.

Para obtener el número de identificación de trabajos programados en el equipo local o en un equipo remoto, use el Get-ScheduledJob cmdlet .

Tipo:Int32
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-InputObject

Especifica un trabajo programado Escriba una variable que contenga objetos ScheduledJob o escriba un comando o expresión que obtenga objetos ScheduledJob, como un Get-ScheduledJob comando. También puede canalizar objetos ScheduledJob a Get-JobTrigger.

Tipo:ScheduledJobDefinition
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-Name

Especifica el nombre de un trabajo programado. Get-JobTrigger obtiene el desencadenador de trabajo del trabajo programado especificado. Se admite caracteres comodín.

Para obtener los nombres de los trabajos programados en el equipo local o en un equipo remoto, use el Get-ScheduledJob cmdlet .

Tipo:String
Posición:0
Valor predeterminado:None
Requerido:True
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-TriggerId

Obtiene los desencadenadores de trabajo especificados. Escriba los identificadores de uno o más desencadenadores de trabajo de un trabajo programado. Use este parámetro cuando el trabajo programado especificado por los parámetros Name, ID o InputObject tenga varios desencadenadores de trabajo.

Tipo:Int32[]
Posición:1
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

ScheduledJobDefinition

Puede canalizar un trabajo programado a este cmdlet.

Salidas

ScheduledJobTrigger

Este cmdlet devuelve el desencadenador del trabajo programado.