Compartir a través de


Disable-JobTrigger

Deshabilita los desencadenadores de trabajo de los trabajos programados.

Sintaxis

Disable-JobTrigger
       [-InputObject] <ScheduledJobTrigger[]>
       [-PassThru]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

El cmdlet Disable-JobTrigger deshabilita temporalmente los desencadenadores de trabajo de los trabajos programados. Deshabilitar conserva todas las propiedades del desencadenador de trabajos, pero impide que el desencadenador de trabajo inicie el trabajo programado.

Para usar este cmdlet, use el cmdlet Get-JobTrigger para obtener los desencadenadores de trabajo. A continuación, canalice los desencadenadores de trabajo para Disable-JobTrigger o use su parámetro InputObject.

Para deshabilitar un desencadenador de trabajo, el cmdlet Disable-JobTrigger establece la propiedad Enabled del desencadenador de trabajo en $false. Para volver a habilitar el desencadenador de trabajo, use el cmdlet Enable-JobTrigger, que establece la propiedad Enabled del desencadenador de trabajo en $true. Deshabilitar un desencadenador de trabajo no deshabilita el trabajo programado, como lo hace el cmdlet Disable-ScheduledJob, pero si deshabilita todos los desencadenadores de trabajo, el efecto es el mismo que deshabilitar el trabajo programado.

Si deshabilita un trabajo programado o deshabilita todos los desencadenadores de trabajo de un trabajo programado, puede iniciar el trabajo mediante el cmdlet Start-Job o usar el trabajo programado deshabilitado como plantilla.

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

Para obtener 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: Deshabilitar un desencadenador de trabajo

En este ejemplo se deshabilita el primer desencadenador de un trabajo programado en el equipo local.

PS C:\> Get-JobTrigger -Name "Backup-Archives" -TriggerId 1 | Disable-JobTrigger

El comando usa el cmdlet Get-JobTrigger para obtener el desencadenador de trabajo. Un operador de canalización (|)envía el desencadenador de trabajo al cmdlet Disable-JobTrigger, que lo deshabilita.

Ejemplo 2: Deshabilitar todos los desencadenadores de trabajo

Get-ScheduledJob -Name "Backup-Archives,Inventory" | Get-JobTrigger | Disable-JobTrigger
Get-ScheduledJob -Name "Backup-Archives,Inventory" | 
    Get-JobTrigger |
    Format-Table -Property Id, Frequency, At, DaysOfWeek, Enabled,
    @{Label="JobName";Expression={$_.JobDefinition.Name}} -AutoSize

Id Frequency At                     DaysOfWeek Enabled JobName
-- --------- --                     ---------- ------- -------
1  Weekly    9/28/2011 3:00:00 AM   {Monday}   False   Backup-Archive
2  Daily     9/29/2011 1:00:00 AM              False   Backup-Archive
1  Weekly    10/20/2011 11:00:00 PM {Friday}   False   Inventory
1  Weekly    11/2/2011 2:00:00 PM   {Monday}   False   Inventory

El primer comando usa el cmdlet Get-ScheduledJob para obtener los trabajos programados de Backup-Archives e Inventario. Un operador de canalización (|) envía los trabajos programados al cmdlet Get-JobTrigger, que obtiene todos los desencadenadores de trabajo de los trabajos programados. Otro operador de canalización envía los desencadenadores de trabajo al cmdlet Disable-JobTrigger, que los deshabilita. El primer comando usa el cmdlet Get-ScheduledJob para obtener los trabajos, ya que su parámetro name toma varios nombres.

El segundo comando muestra los resultados. El comando repite el comando Get-ScheduledJob y Get-JobTrigger. Un operador de canalización envía los desencadenadores de trabajo al cmdlet Format-Table, que muestra los desencadenadores de trabajo en una tabla. El comando Format-Table agrega una propiedad JobName que muestra el valor de la propiedad Name del trabajo programado en la propiedad JobDefinition del objeto desencadenador de trabajo.

Estos comandos deshabilitan todos los desencadenadores de trabajo en dos trabajos programados y muestran los resultados.

Ejemplo 3: Deshabilitar el desencadenador de trabajo de un trabajo programado en un equipo remoto

En este ejemplo se deshabilitan los desencadenadores de trabajo diarios para un trabajo programado en un equipo remoto.

Invoke-Command -ComputerName Server01 {
    Get-JobTrigger -Name DeployPackage | 
    Where-Object {$_.Frequency -eq "Daily"} |
    Disable-JobTrigger
}

El comando usa el cmdlet Invoke-Command para ejecutar los comandos en el equipo Server01. El comando remoto usa el cmdlet Get-JobTrigger para obtener los desencadenadores de trabajo del trabajo programado DeployPackage. Un operador de canalización envía los desencadenadores de trabajo al cmdlet Where-Object, que devuelve solo desencadenadores de trabajo diarios. Un operador de canalización envía los desencadenadores de trabajo diarios al cmdlet Disable-JobTrigger, que los deshabilita.

Parámetros

-Confirm

Le pide confirmación antes de ejecutar el cmdlet.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-InputObject

Especifica el desencadenador de trabajo que se va a deshabilitar. Escriba una variable que contenga objetos ScheduledJobTrigger o escriba un comando o expresión que obtenga objetos ScheduledJobTrigger, como un comando Get-JobTrigger. También puede canalizar un objeto de de ScheduledJobTrigger a Disable-JobTrigger.

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

-PassThru

Devuelve un objeto que representa el elemento con el que está trabajando. De forma predeterminada, este cmdlet no genera ninguna salida.

Tipo:SwitchParameter
Posición:Named
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-WhatIf

Muestra lo que sucedería si el cmdlet se ejecuta. El cmdlet no se ejecuta.

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

ScheduledJobTrigger

Puede canalizar un desencadenador de trabajo a este cmdlet.

Salidas

None

Este cmdlet no devuelve ninguna salida.

Notas

  • Disable-JobTrigger no genera errores ni advertencias si deshabilita un desencadenador de trabajo que ya está deshabilitado.