Compartir a través de


Disable-ScheduledJob

Deshabilita un trabajo programado.

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

El Disable-ScheduledJob cmdlet deshabilita temporalmente los trabajos programados. Las propiedades de los trabajos se conservan en su totalidad y los desencadenadores no se deshabilitan, pero se impide que los trabajos programados se inicien automáticamente al desencadenarse. Puede iniciar un trabajo programado deshabilitado mediante el Start-Job cmdlet o usar un trabajo programado deshabilitado como plantilla.

Para deshabilitar un trabajo programado, el Disable-ScheduledJob cmdlet establece la propiedad Enabled del trabajo programado en False. Para volver a habilitar el trabajo programado, use el Enable-ScheduledJob cmdlet .

Disable-ScheduledJob 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: Deshabilitar un trabajo programado

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

Disable-ScheduledJob -ID 2 -Passthru

Este comando deshabilita el trabajo programado con el identificador 2 en el equipo local.

Ejemplo 2: Deshabilitar todos los trabajos programados

En este ejemplo se deshabilitan todos los trabajos programados en el equipo local.

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

El Get-ScheduledJob cmdlet para obtener todo el trabajo programado y canalizalos al Disable-ScheduledJob cmdlet para deshabilitarlos.

Puede volver a habilitar el trabajo programado mediante el Enable-ScheduledJob cmdlet y ejecutar un trabajo programado deshabilitado mediante el Start-Job cmdlet .

Disable-ScheduledJob no genera advertencias ni errores si deshabilita un trabajo programado que ya está deshabilitado, por lo que puede deshabilitar todos los trabajos programados sin condiciones.

Ejemplo 3: Deshabilitar trabajos programados seleccionados

En este ejemplo se deshabilita el trabajo programado no se incluye una credencial.

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

Los trabajos sin credenciales se ejecutan con el permiso del usuario que los creó.

El comando usa el Get-ScheduledJob cmdlet para obtener todos los trabajos programados en el equipo. Un operador de canalización envía los trabajos programados al Where-Object cmdlet , que selecciona los trabajos programados que no tienen credenciales. El comando usa el operador not (!) y hace referencia a la propiedad Credential del trabajo programado. Otro operador de canalización envía los trabajos programados seleccionados al Disable-ScheduledJob cmdlet , que los deshabilita.

Ejemplo 4: Deshabilitar trabajos programados en un equipo remoto

En este ejemplo se deshabilita un trabajo programado en dos equipos remotos.

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

El comando usa el Invoke-Command cmdlet para ejecutar un Disable-ScheduledJob comando en los equipos Srv01 y Srv10. El comando usa el parámetro Name de Disable-ScheduledJob para seleccionar el trabajo programado TestJob en cada equipo.

Ejemplo 5: Deshabilitar un trabajo programado por su identificador global

En este ejemplo se muestra cómo deshabilitar un trabajo programado mediante su identificador global. El valor de la propiedad GlobalID de un trabajo programado es un identificador único (GUID). Utilice el valor GlobalID si es necesario ser preciso; por ejemplo, cuando se deshabiliten trabajos programados en varios equipos.

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

El primer comando muestra una manera de buscar el GlobalID de un trabajo programado. El comando usa el Get-ScheduledJob cmdlet para obtener los trabajos programados en el equipo. Un operador de canalización (|) envía los trabajos programados al Format-Table cmdlet , que muestra las propiedades Name, GlobalID y Command de cada trabajo de una tabla.

El segundo comando usa el Get-ScheduledJob cmdlet para obtener los trabajos programados en el equipo. Un operador de canalización (|) envía los trabajos programados al Where-Object cmdlet , que selecciona el trabajo programado con el identificador global especificado. Otro operador de canalización envía el trabajo al Disable-ScheduledJob cmdlet , que lo deshabilita.

Parámetros

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

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

-Id

Deshabilita el trabajo programado con el número de identificación especificado (ID). Escriba el identificador de un trabajo programado.

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

-InputObject

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

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

-Name

Deshabilita los trabajos programados con los nombres especificados. Escriba el nombre de un trabajo programado. Se admite caracteres comodín.

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

-PassThru

Devuelve un objeto que representa el elemento con el que está trabajando. De forma predeterminada, este cmdlet no genera ningún resultado.

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

-WhatIf

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

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

Entradas

ScheduledJobDefinition

Puede canalizar un trabajo programado a Disable-ScheduledJob.

Salidas

None

De forma predeterminada, este cmdlet no devuelve ninguna salida.

ScheduledJobDefinition

Cuando se usa el parámetro PassThru , este cmdlet devuelve el trabajo programado que está deshabilitado.

Notas

  • Disable-ScheduledJob no genera advertencias ni errores si se usa para deshabilitar un trabajo programado que ya está deshabilitado.