

• El panel de AWS Systems Manager CloudWatch dejará de estar disponible después del 30 de abril de 2026. Los clientes pueden seguir utilizando la consola de Amazon CloudWatch para ver, crear y administrar sus paneles de Amazon CloudWatch, tal y como lo hacen actualmente. Para obtener más información, consulte la [documentación del panel de Amazon CloudWatch](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html). 

# Tutoriales: creación y administración de periodos de mantenimiento mediante la AWS CLI
<a name="maintenance-window-tutorial-cli"></a>

En esta sección se incluyen varios tutoriales para aprender a utilizar la AWS Command Line Interface (AWS CLI) para hacer lo siguiente:
+ Crear y configurar un periodo de mantenimiento
+ Ver información sobre un periodo de mantenimiento
+ Ver información sobre las tareas y las ejecuciones de tareas de periodos de mantenimiento
+ Actualizar un periodo de mantenimiento
+ Eliminar un periodo de mantenimiento

**Realizar un seguimiento de los ID de los recursos**  
A medida que complete las tareas en estos tutoriales de la AWS CLI, realice un seguimiento de los ID de recurso generados por los comandos que ejecuta. Puede utilizar muchos de estos como entrada de comandos posteriores. Por ejemplo, al crear el periodo de mantenimiento, el sistema le proporciona un ID de periodo de mantenimiento en el siguiente formato:

```
{
   "WindowId":"mw-0c50858d01EXAMPLE"
}
```

Anote los siguientes ID generados por el sistema, ya que los tutoriales de esta sección los utilizan:
+ `WindowId`
+ `WindowTargetId`
+ `WindowTaskId`
+ `WindowExecutionId`
+ `TaskExecutionId`
+ `InvocationId`
+ `ExecutionId`

También necesita el ID de la instancia de EC2 que planea usar en los tutoriales. Por ejemplo: `i-02573cafcfEXAMPLE`

**Topics**
+ [Tutorial: cree y configure un periodo de mantenimiento mediante la AWS CLI](maintenance-windows-cli-tutorials-create.md)
+ [Tutorial: vea información sobre periodos de mantenimiento mediante la AWS CLI](maintenance-windows-cli-tutorials-describe.md)
+ [Tutorial: visualización de información sobre tareas y ejecuciones de tareas mediante la AWS CLI](mw-cli-tutorial-task-info.md)
+ [Tutorial actualización de un periodo de mantenimiento mediante la AWS CLI](maintenance-windows-cli-tutorials-update.md)
+ [Tutorial: eliminación de un periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-delete-mw.md)

# Tutorial: cree y configure un periodo de mantenimiento mediante la AWS CLI
<a name="maintenance-windows-cli-tutorials-create"></a>

En este tutorial se muestra cómo utilizar la AWS Command Line Interface (AWS CLI) para crear y configurar un periodo de mantenimiento, sus destinos y sus tareas. La ruta principal del tutorial se compone de pasos sencillos. Cree un único periodo de mantenimiento, identifique un solo destino y configure una tarea simple para ejecutar en el periodo de mantenimiento. Durante el proceso, proporcionamos información que puede utilizar para probar situaciones más complicadas.

A medida que siga los pasos que se indican en este tutorial, reemplace los valores en *rojo* y cursiva por sus propias opciones y sus ID. Por ejemplo, reemplace el ID del periodo de mantenimiento *mw-0c50858d01EJEMPLO* y el ID de la instancia *i-02573cafcfEJEMPLO* por los ID de los recursos que usted cree.

**Topics**
+ [Paso 1: cree el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-create-mw.md)
+ [Paso 2: registre un nodo de destino con el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-targets.md)
+ [Paso 3: registre una tarea con el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-tasks.md)

# Paso 1: cree el periodo de mantenimiento mediante la AWS CLI
<a name="mw-cli-tutorial-create-mw"></a>

En este paso va a crear un periodo de mantenimiento y va a especificar sus opciones básicas, como, por ejemplo, el nombre, la programación y la duración. Más adelante puede seleccionar la instancia que actualizará y la tarea que ejecutará.

En el ejemplo, se crea un periodo de mantenimiento que se ejecuta cada cinco minutos. Normalmente, un periodo de mantenimiento no se ejecutaría con esta frecuencia. Sin embargo, con esta frecuencia puede ver los resultados del tutorial rápidamente. Mostraremos cómo cambiar a una frecuencia inferior una vez que la tarea se haya ejecutado de forma correcta.

**nota**  
Para ver una explicación de cómo se relacionan entre sí las distintas opciones relacionadas con la programación de los periodos de mantenimiento, consulte [Programación de la ventana de mantenimiento y opciones de periodo activo](maintenance-windows-schedule-options.md).  
Para obtener más información acerca del uso de la opción `--schedule`, consulte [Referencia: expresiones cron y rate para Systems Manager](reference-cron-and-rate-expressions.md).

**Creación de un periodo de mantenimiento mediante la AWS CLI**

1. Abra la AWS Command Line Interface (AWS CLI) y ejecute el siguiente comando en su máquina local para crear un periodo de mantenimiento que haga lo siguiente:
   + Se ejecuta cada cinco minutos durante un máximo de dos horas (según sea necesario).
   + Impide que se inicien nuevas tareas en el plazo de una hora desde la finalización de la operación del periodo de mantenimiento.
   + Permite destinos no asociados (instancias que no ha registrado en el periodo de mantenimiento).
   + Indica mediante el uso de etiquetas personalizadas que su creador piensa utilizarlo en un tutorial.

------
#### [ Linux & macOS ]

   ```
   aws ssm create-maintenance-window \
       --name "My-First-Maintenance-Window" \
       --schedule "rate(5 minutes)" \
       --duration 2 \
       --cutoff 1 \
       --allow-unassociated-targets \
       --tags "Key=Purpose,Value=Tutorial"
   ```

------
#### [ Windows ]

   ```
   aws ssm create-maintenance-window ^
       --name "My-First-Maintenance-Window" ^
       --schedule "rate(5 minutes)" ^
       --duration 2 ^
       --cutoff 1 ^
       --allow-unassociated-targets ^
       --tags "Key"="Purpose","Value"="Tutorial"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
      "WindowId":"mw-0c50858d01EXAMPLE"
   }
   ```

1. A continuación, ejecute el siguiente comando para ver los detalles de esto y cualquier otro periodo de mantenimiento ya en su cuenta.

   ```
   aws ssm describe-maintenance-windows
   ```

   El sistema devuelve información similar a la siguiente.

   ```
   {
      "WindowIdentities":[
         {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "Name": "My-First-Maintenance-Window",
               "Enabled": true,
               "Duration": 2,
               "Cutoff": 1,
               "NextExecutionTime": "2019-05-11T16:46:16.991Z"
         }
      ]
   }
   ```

Continuar con [Paso 2: registre un nodo de destino con el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-targets.md).

# Paso 2: registre un nodo de destino con el periodo de mantenimiento mediante la AWS CLI
<a name="mw-cli-tutorial-targets"></a>

En este paso, debe registrar un destino con el nuevo periodo de mantenimiento. En este caso, debe especificar qué nodo actualizar cuando se ejecuta el periodo de mantenimiento. 

Para ver un ejemplo de registrar más de un nodo al mismo tiempo con ID de nodos, ejemplos de uso de etiquetas para identificar varios nodos, y ejemplos de especificar los grupos de recursos como destinos, consulte [Ejemplos: registrar destinos con un periodo de mantenimiento](mw-cli-tutorial-targets-examples.md).

**nota**  
Ya debería haber creado una instancia de Amazon Elastic Compute Cloud (Amazon EC2) para utilizarla en este paso, como se describe en los [requisitos previos para el tutorial de Maintenance Windows](maintenance-windows-tutorials.md).

**Para registrar un nodo de destino con el periodo de mantenimiento mediante la AWS CLI**

1. Ejecute el siguiente comando en el equipo local. Reemplace cada *example resource placeholder* con su propia información.

------
#### [ Linux & macOS ]

   ```
   aws ssm register-target-with-maintenance-window \
       --window-id "mw-0c50858d01EXAMPLE" \
       --resource-type "INSTANCE" \
       --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm register-target-with-maintenance-window ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --resource-type "INSTANCE" ^
       --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
      "WindowTargetId":"e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
   }
   ```

1. Ahora, ejecute el siguiente comando en su máquina local para ver información detallada sobre el periodo de mantenimiento de destino.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-targets \
       --window-id "mw-0c50858d01EXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-targets ^
       --window-id "mw-0c50858d01EXAMPLE"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "Targets": [
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE",
               "ResourceType": "INSTANCE",
               "Targets": [
                   {
                       "Key": "InstanceIds",
                       "Values": [
                           "i-02573cafcfEXAMPLE"
                       ]
                   }
               ]
           }
       ]
   }
   ```

Continuar con [Paso 3: registre una tarea con el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-tasks.md). 

# Ejemplos: registrar destinos con un periodo de mantenimiento
<a name="mw-cli-tutorial-targets-examples"></a>

Puede registrar un solo nodo como destino utilizando su ID de nodo, tal y como se indica en [Paso 2: registre un nodo de destino con el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-targets.md). También puede registrar uno o varios nodos como destinos utilizando los formatos de comandos de esta página.

En general, hay dos métodos para identificar los nodos que desea utilizar como destinos de periodo de mantenimiento: especificar nodos individuales y utilizar etiquetas de recursos. El método de etiquetas de recursos proporciona más opciones, tal y como se muestra en ejemplos 2-3. 

También puede especificar uno o varios grupos de recursos como el destino de un periodo de mantenimiento. Un grupo de recursos puede incluir nodos y muchos otros tipos de recursos de AWS compatibles. Ejemplos 4 y 5, a continuación, muestran cómo agregar los grupos de recursos para el periodo de mantenimiento de los destinos.

**nota**  
Si se registra una sola tarea del periodo de mantenimiento con varios destinos, las invocaciones de la tarea se producen de forma secuencial y no en paralelo. Si la tarea debe ejecutarse en varios destinos al mismo tiempo, registre una tarea para cada destino de forma individual y asigne a cada tarea el mismo nivel de prioridad.

Para obtener más información acerca de cómo se crean y administran los grupos de recursos, consulte [¿Qué son los grupos de recurso?](https://docs.aws.amazon.com/ARG/latest/userguide/resource-groups.html) en la *Guía del usuario de Grupos de recursos de AWS* y [Resource Groups y etiquetado para AWS](https://aws.amazon.com/blogs/aws/resource-groups-and-tagging/) en el *Blog de noticias de AWS*.

Para obtener información sobre las cuotas de Maintenance Windows, una herramienta de AWS Systems Manager, además de las especificadas en los siguientes ejemplos, consulte [Systems Manager service quotas](https://docs.aws.amazon.com/general/latest/gr/ssm.html#limits_ssm) en la *Referencia general de Amazon Web Services*.

## Ejemplo 1: registrar varios destinos utilizando ID de nodos
<a name="mw-target-example-1"></a>

Ejecute el siguiente comando en el formato de su equipo local para registrar varios nodos como destinos mediante sus ID de nodos. Reemplace cada *example resource placeholder* con su propia información.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "INSTANCE" \
    --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE ^
    --resource-type "INSTANCE" ^
    --target "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE,i-07782c72faEXAMPLE
```

------

**Uso recomendado**: de máxima utilidad al registrar un grupo de nodos único con cualquier periodo de mantenimiento por primera vez y que *no* comparten una etiqueta de nodo común.

**Cuotas:** puede especificar hasta 50 nodos en total para el destino de cada periodo de mantenimiento.

## Ejemplo 2: registrar destinos con etiquetas de recursos aplicadas a nodos
<a name="mw-target-example-2"></a>

Ejecute el siguiente comando en su equipo local para registrar nodos que ya están etiquetados con un par de valor de clave que usted adjuntó. Reemplace cada *example resource placeholder* con su propia información.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "INSTANCE" \
    --target "Key=tag:Region,Values=East"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "INSTANCE" ^
    --target "Key=tag:Region,Values=East"
```

------

**Uso recomendado**: de máxima utilidad al registrar un grupo de nodos único con cualquier periodo de mantenimiento por primera vez y que *sí* comparten una etiqueta de nodo común.

**Cuotas:** puede especificar un total de hasta cinco pares clave-valor en cada destino. Si especifica varios pares de valor de clave, será necesario etiquetar un nodo con *todos* los valores y las claves de etiqueta especificados para que se incluyan en el grupo de destino.

**nota**  
Puede etiquetar un grupo de instancias con la etiqueta-clave `Patch Group` o `PatchGroup` y asignar a las instancias un valor de clave común, como `my-patch-group`. (Debe utilizar `PatchGroup`, sin espacio, si ha [permitido las etiquetas en los metadatos de las instancias de EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#allow-access-to-tags-in-IMDS)). Patch Manager, una herramienta de Systems Manager, evalúa la clave `Patch Group` o `PatchGroup` en los nodos para ayudar a determinar qué línea de base de revisiones se aplica a ellos. Si su tarea va a ejecutar el documento de SSM `AWS-RunPatchBaseline` (o el documento de SSM antiguo `AWS-ApplyPatchBaseline`), puede especificar el mismo par de clave-valor `Patch Group` o `PatchGroup` al registrar destinos con un periodo de mantenimiento. Por ejemplo: `--target "Key=tag:PatchGroup,Values=my-patch-group`. Esto permite utilizar un periodo de mantenimiento para actualizar revisiones en un grupo de nodos que ya están asociados a la misma base de referencia de revisiones. Para obtener más información, consulte [Grupos de revisiones](patch-manager-patch-groups.md).

## Ejemplo 3: registrar destinos usando un grupo de claves de etiquetas (sin valores de etiqueta)
<a name="mw-target-example-3"></a>

Ejecute el siguiente comando en su máquina local para registrar nodos que tienen una o más claves asignadas, independientemente de los valores de la clave. Reemplace cada *example resource placeholder* con su propia información.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "INSTANCE" \
    --target "Key=tag-key,Values=Name,Instance-Type,CostCenter"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "INSTANCE" ^
    --target "Key=tag-key,Values=Name,Instance-Type,CostCenter"
```

------

**Uso recomendado**: de máxima utilidad cuando se desea registrar nodos de destino especificando varias *claves* de etiqueta (sin sus valores) en lugar de solo un par etiqueta-clave o un par clave-valor.

**Cuotas**: puede especificar un total de hasta cinco pares etiqueta-clave para cada destino. Si especifica más de una clave de etiqueta, será necesario etiquetar un nodo con *todas* las claves de etiqueta especificadas para que se incluyan en el grupo de destino.

## Ejemplo 4: registro de destinos con un nombre de grupo de recursos
<a name="mw-target-example-4"></a>

Ejecute el siguiente comando en su máquina local para registrar un grupo de recursos especificado, independientemente del tipo de recursos que contiene. Reemplace *mw-0c50858d01EXAMPLE* con su propia información. Si las tareas que se asignan al periodo de mantenimiento no actúan en un tipo de recurso incluido en este grupo de recursos, el sistema podría informar un error. Las tareas para las que se encuentra un tipo de recurso compatible siguen ejecutándose a pesar de estos errores.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "RESOURCE_GROUP" \
    --target "Key=resource-groups:Name,Values=MyResourceGroup"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "RESOURCE_GROUP" ^
    --target "Key=resource-groups:Name,Values=MyResourceGroup"
```

------

**Uso recomendado**: Útil cuando desea especificar rápidamente un grupo de recursos como destino sin evaluar si todos sus tipos de recursos se destinará por un periodo de mantenimiento, o cuando se sabe que el grupo de recursos contiene únicamente los tipos de recursos que realizar acciones en sus tareas.

**Cuotas:** puede especificar un único grupo de recursos como destino.

## Ejemplo 5: registro de destinos mediante el filtrado de tipos de recursos en un grupo de recursos
<a name="mw-target-example-5"></a>

Ejecute el siguiente comando en su máquina local para registrar únicamente determinados tipos de recursos que pertenecen a un grupo de recursos que especifique. Reemplace *mw-0c50858d01EXAMPLE* con su propia información. Con esta opción, incluso si añade una tarea para un tipo de recurso que pertenece al grupo de recursos, la tarea no se ejecutará si no lo ha añadido explícitamente el tipo de recurso para el filtro.

------
#### [ Linux & macOS ]

```
aws ssm register-target-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --resource-type "RESOURCE_GROUP" \
    --target "Key=resource-groups:Name,Values=MyResourceGroup" \
    "Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::Instance,AWS::ECS::Cluster"
```

------
#### [ Windows ]

```
aws ssm register-target-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --resource-type "RESOURCE_GROUP" ^
    --target "Key=resource-groups:Name,Values=MyResourceGroup" ^
    "Key=resource-groups:ResourceTypeFilters,Values=AWS::EC2::Instance,AWS::ECS::Cluster"
```

------

**Uso recomendado**: útil cuando desea mantener un control estricto sobre los tipos de recursos de AWS en los que el periodo de mantenimiento puede ejecutar acciones, o cuando el grupo de recursos contiene un gran número de tipos de recursos y desea evitar los informes de error innecesarios en los registros del periodo de mantenimiento.

**Cuotas:** puede especificar un único grupo de recursos como destino.

# Paso 3: registre una tarea con el periodo de mantenimiento mediante la AWS CLI
<a name="mw-cli-tutorial-tasks"></a>

En este paso del tutorial, registrará una tarea de AWS Systems Manager Run Command que ejecuta el comando `df` en su instancia de Amazon Elastic Compute Cloud (Amazon EC2) para Linux. Los resultados de este comando de Linux estándar muestran la cantidad de espacio libre y de espacio que se utiliza en el sistema de archivos de disco de la instancia.

-o bien-

Si tiene una instancia de Amazon EC2 para Windows Server en lugar de Linux, reemplace **df** en el siguiente comando por **ipconfig**. La salida de este comando muestra los detalles de la dirección IP, la máscara de subred y la gateway predeterminada para los adaptadores en la instancia de destino.

Cuando esté listo para registrar otros tipos de tareas o utilizar otras opciones disponibles de Systems Manager Run Command, consulte [Ejemplos: registrar tareas en un periodo de mantenimiento](mw-cli-register-tasks-examples.md). En este apartado se proporciona más información sobre los cuatro tipos de tarea y algunas de sus opciones más importantes, con el fin de ayudarle a planificar escenarios más extensos y reales. 

**Para registrar una tarea en un periodo de mantenimiento**

1. Ejecute el siguiente comando en el equipo local. Reemplace cada *example resource placeholder* con su propia información. La versión para ejecutar desde un equipo local con Windows incluye los caracteres de escape ("/") necesarios para ejecutar el comando desde la herramienta de línea de comandos.

------
#### [ Linux & macOS ]

   ```
   aws ssm register-task-with-maintenance-window \
       --window-id mw-0c50858d01EXAMPLE \
       --task-arn "AWS-RunShellScript" \
       --max-concurrency 1 --max-errors 1 \
       --priority 10 \
       --targets "Key=InstanceIds,Values=i-0471e04240EXAMPLE" \
       --task-type "RUN_COMMAND" \
       --task-invocation-parameters '{"RunCommand":{"Parameters":{"commands":["df"]}}}'
   ```

------
#### [ Windows ]

   ```
   aws ssm register-task-with-maintenance-window ^
       --window-id mw-0c50858d01EXAMPLE ^
       --task-arn "AWS-RunShellScript" ^
       --max-concurrency 1 --max-errors 1 ^
       --priority 10 ^
       --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" ^
       --task-type "RUN_COMMAND" ^
       --task-invocation-parameters={\"RunCommand\":{\"Parameters\":{\"commands\":[\"df\"]}}}
   ```

------

   El sistema devuelve información similar a la siguiente:

   ```
   {
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE"
   }
   ```

1. Ahora ejecute el siguiente comando para ver información detallada sobre la tarea del periodo de mantenimiento que ha creado. 

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-tasks \
       --window-id mw-0c50858d01EXAMPLE
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-tasks ^
       --window-id mw-0c50858d01EXAMPLE
   ```

------

1. El sistema devuelve información similar a la siguiente.

   ```
   {
       "Tasks": [
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
               "TaskArn": "AWS-RunShellScript",
               "Type": "RUN_COMMAND",
               "Targets": [
                   {
                       "Key": "InstanceIds",
                       "Values": [
                           "i-02573cafcfEXAMPLE"
                       ]
                   }
               ],
               "TaskParameters": {},
               "Priority": 10,
               "ServiceRoleArn": "arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole",
               "MaxConcurrency": "1",
               "MaxErrors": "1"
           }
       ]
   }
   ```

1. Espere hasta que la tarea haya tenido tiempo de ejecutarse, según la programación que especificó en [Paso 1: cree el periodo de mantenimiento mediante la AWS CLI](mw-cli-tutorial-create-mw.md). Por ejemplo, si especificó **--schedule "rate(5 minutes)"**, espere cinco minutos. A continuación, ejecute el siguiente comando para ver información sobre las ejecuciones que han tenido lugar para esta tarea. 

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-executions \
       --window-id mw-0c50858d01EXAMPLE
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-executions ^
       --window-id mw-0c50858d01EXAMPLE
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowExecutions": [
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
               "Status": "SUCCESS",
               "StartTime": 1557593493.096,
               "EndTime": 1557593498.611
           }
       ]
   }
   ```

**sugerencia**  
Una vez que la tarea se ejecuta correctamente, puede reducir la frecuencia de ejecución del periodo de mantenimiento. Por ejemplo, ejecute el siguiente comando para reducir la frecuencia a una vez a la semana. Reemplace *mw-0c50858d01EXAMPLE* con su propia información.  

```
aws ssm update-maintenance-window \
    --window-id mw-0c50858d01EXAMPLE \
    --schedule "rate(7 days)"
```

```
aws ssm update-maintenance-window ^
    --window-id mw-0c50858d01EXAMPLE ^
    --schedule "rate(7 days)"
```
Para obtener información sobre cómo administrar las programaciones de los periodos de mantenimiento, consulte [Referencia: expresiones cron y rate para Systems Manager](reference-cron-and-rate-expressions.md) y [Programación de la ventana de mantenimiento y opciones de periodo activo](maintenance-windows-schedule-options.md).  
Para obtener información acerca de cómo utilizar la AWS Command Line Interface (AWS CLI) para modificar un periodo de mantenimiento, consulte [Tutorial actualización de un periodo de mantenimiento mediante la AWS CLI](maintenance-windows-cli-tutorials-update.md).

Para practicar la ejecución de comandos de la AWS CLI a fin de ver más detalles sobre la tarea del periodo de mantenimiento y sus ejecuciones, vaya a [Tutorial: visualización de información sobre tareas y ejecuciones de tareas mediante la AWS CLI](mw-cli-tutorial-task-info.md).

**Acceder al resultado del comando del tutorial**  
Está fuera del alcance de este tutorial utilizar la AWS CLI para ver el *resultado* del comando de Run Command asociado a las ejecuciones de la tarea del periodo de mantenimiento.

No obstante, puede ver estos datos mediante la AWS CLI. (También puede ver la salida en la consola de Systems Manager o en un archivo de registros almacenado en un bucket de Amazon Simple Storage Service (Amazon S3), en caso de haber configurado el periodo de mantenimiento para almacenar las salidas de los comandos allí). Descubrirá que la salida del comando **df** en una instancia de EC2 para Linux es similar a lo siguiente.

```
Filesystem 1K-blocks Used Available Use% Mounted on

devtmpfs 485716 0 485716 0% /dev

tmpfs 503624 0 503624 0% /dev/shm

tmpfs 503624 328 503296 1% /run

tmpfs 503624 0 503624 0% /sys/fs/cgroup

/dev/xvda1 8376300 1464160 6912140 18% /
```

El resultado del comando **ipconfig** en una instancia de EC2 para Windows Server es similar al siguiente:

```
Windows IP Configuration


Ethernet adapter Ethernet 2:

   Connection-specific DNS Suffix  . : example.com
   IPv4 Address. . . . . . . . . . . : 10.24.34.0/23
   Subnet Mask . . . . . . . . . . . : 255.255.255.255
   Default Gateway . . . . . . . . . : 0.0.0.0

Ethernet adapter Ethernet:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . : abc1.wa.example.net

Wireless LAN adapter Local Area Connection* 1:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :

Wireless LAN adapter Wi-Fi:

   Connection-specific DNS Suffix  . :
   Link-local IPv6 Address . . . . . : fe80::100b:c234:66d6:d24f%4
   IPv4 Address. . . . . . . . . . . : 192.0.2.0
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.0.2.0

Ethernet adapter Bluetooth Network Connection:

   Media State . . . . . . . . . . . : Media disconnected
   Connection-specific DNS Suffix  . :
```

# Ejemplos: registrar tareas en un periodo de mantenimiento
<a name="mw-cli-register-tasks-examples"></a>

Puede registrar una tarea en Run Command, una herramienta de AWS Systems Manager, con un periodo de mantenimiento mediante la AWS Command Line Interface (AWS CLI), como se muestra en [Registrar tareas en un periodo de mantenimiento](mw-cli-tutorial-tasks.md). También puede registrar tareas para flujos de trabajo de Systems Manager Automation, funciones de AWS Lambda y tareas de AWS Step Functions, como se muestra más adelante en este tema.

**nota**  
Especifique uno o más destinos para las tareas de tipo Run Command del periodo de mantenimiento. Según la tarea, los destinos son opcionales para otros tipos de tarea de periodo de mantenimiento (Automation, AWS Lambda y AWS Step Functions). Para obtener más información acerca de la ejecución de tareas que no especifican destinos, consulte [Registro de tareas del periodo de mantenimiento sin destinos](maintenance-windows-targetless-tasks.md).

En este tema, se proporcionan ejemplos de cómo utilizar el comando `register-task-with-maintenance-window` de la AWS Command Line Interface (AWS CLI) para registrar cada uno de los cuatro tipos de tareas compatibles en un periodo de mantenimiento. Los ejemplos solo tienen fines de demostración, pero puede modificarlos para crear los comandos de registro de las tareas en uso. 

**Uso de la opción --cli-input-json**  
Para administrar mejor las opciones de la tarea, puede utilizar la opción de comando `--cli-input-json`, con valores de opción a los que se hace referencia en un archivo JSON. 

Para utilizar el contenido del archivo JSON de ejemplo que proporcionamos en los siguientes ejemplos, haga lo siguiente en su equipo local:

1. Cree un archivo con un nombre como, por ejemplo, `MyRunCommandTask.json`, `MyAutomationTask.json` o cualquier otro nombre de su preferencia.

1. Copie el contenido de la muestra de JSON en el archivo.

1. Modifique el contenido del archivo para el registro de la tarea y, a continuación, guarde el archivo.

1. En el mismo directorio en el que almacenó el archivo, ejecute el comando siguiente. Sustituya el nombre de archivo por *MiArchivo.json*. 

------
#### [ Linux & macOS ]

   ```
   aws ssm register-task-with-maintenance-window \
       --cli-input-json file://MyFile.json
   ```

------
#### [ Windows ]

   ```
   aws ssm register-task-with-maintenance-window ^
       --cli-input-json file://MyFile.json
   ```

------

**Pseudoparámetros en las tareas de periodos de mantenimiento**  
En algunos ejemplos, utilizamos los *pseudoparámetros* como método para transferir información del ID a sus tareas. Por ejemplo, `{{TARGET_ID}}` y `{{RESOURCE_ID}}` se pueden utilizar para pasar los ID de los recursos de AWS a tareas de Automation, Lambda y Step Functions. Para obtener más información sobre los pseudoparámetros en el contenido `--task-invocation-parameters`, consulte [Utilización de pseudoparámetros en el registro de las tareas del periodo de mantenimiento](maintenance-window-tasks-pseudo-parameters.md). 

**Más información**  
+ [Opciones de parámetros para el comando register-task-with-maintenance-windows](mw-cli-task-options.md).
+ [https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html) en la *Referencia de comandos de la AWS CLI*
+ [https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_RegisterTaskWithMaintenanceWindow.html](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_RegisterTaskWithMaintenanceWindow.html) en la *Referencia de la API de AWS Systems Manager*

## Ejemplos de registro de tareas
<a name="task-examples"></a>

En las secciones siguientes se proporciona un comando de la AWS CLI de ejemplo para registrar un tipo de tarea admitido y una muestra de JSON que se puede utilizar con la opción `--cli-input-json`.

### Registrar una tarea de Run Command de Systems Manager
<a name="register-tasks-tutorial-run-command"></a>

Los siguientes ejemplos muestran cómo registrar tareas de Systems Manager Run Command con un periodo de mantenimiento mediante la AWS CLI.

------
#### [ Linux & macOS ]

```
aws ssm register-task-with-maintenance-window \
    --window-id mw-0c50858d01EXAMPLE \
    --task-arn "AWS-RunShellScript" \
    --max-concurrency 1 --max-errors 1 --priority 10 \
    --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" \
    --task-type "RUN_COMMAND" \
    --task-invocation-parameters '{"RunCommand":{"Parameters":{"commands":["df"]}}}'
```

------
#### [ Windows ]

```
aws ssm register-task-with-maintenance-window ^
    --window-id mw-0c50858d01EXAMPLE ^
    --task-arn "AWS-RunShellScript" ^
    --max-concurrency 1 --max-errors 1 --priority 10 ^
    --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" ^
    --task-type "RUN_COMMAND" ^
    --task-invocation-parameters "{\"RunCommand\":{\"Parameters\":{\"commands\":[\"df\"]}}}"
```

------

**Contenido JSON para usar con la opción de archivo `--cli-input-json`:**

```
{
    "TaskType": "RUN_COMMAND",
    "WindowId": "mw-0c50858d01EXAMPLE",
    "Description": "My Run Command task to update SSM Agent on an instance",
    "MaxConcurrency": "1",
    "MaxErrors": "1",
    "Name": "My-Run-Command-Task",
    "Priority": 10,
    "Targets": [
        {
            "Key": "WindowTargetIds",
            "Values": [
                "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            ]
        }
    ],
    "TaskArn": "AWS-UpdateSSMAgent",
    "TaskInvocationParameters": {
        "RunCommand": {
            "Comment": "A TaskInvocationParameters test comment",
            "NotificationConfig": {
                "NotificationArn": "arn:aws:sns:region:123456789012:my-sns-topic-name",
                "NotificationEvents": [
                    "All"
                ],
                "NotificationType": "Invocation"
            },
            "OutputS3BucketName": "amzn-s3-demo-bucket",
            "OutputS3KeyPrefix": "S3-PREFIX",
            "TimeoutSeconds": 3600
        }
    }
}
```

### Registrar una tarea de Systems Manager Automation
<a name="register-tasks-tutorial-automation"></a>

Los siguientes ejemplos muestran cómo registrar tareas de Systems Manager Automation con un periodo de mantenimiento mediante la AWS CLI: 

**AWS CLI comando:**

------
#### [ Linux & macOS ]

```
aws ssm register-task-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --task-arn "AWS-RestartEC2Instance" \
    --service-role-arn arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole \
    --task-type AUTOMATION \
    --task-invocation-parameters "Automation={DocumentVersion=5,Parameters={InstanceId='{{RESOURCE_ID}}'}}" \
    --priority 0 --name "My-Restart-EC2-Instances-Automation-Task" \
    --description "Automation task to restart EC2 instances"
```

------
#### [ Windows ]

```
aws ssm register-task-with-maintenance-window ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --task-arn "AWS-RestartEC2Instance" ^
    --service-role-arn arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole ^
    --task-type AUTOMATION ^
    --task-invocation-parameters "Automation={DocumentVersion=5,Parameters={InstanceId='{{TARGET_ID}}'}}" ^
    --priority 0 --name "My-Restart-EC2-Instances-Automation-Task" ^
    --description "Automation task to restart EC2 instances"
```

------

**Contenido JSON para usar con la opción de archivo `--cli-input-json`:**

```
{
    "WindowId": "mw-0c50858d01EXAMPLE",
        "TaskArn": "AWS-PatchInstanceWithRollback",
    "TaskType": "AUTOMATION","TaskInvocationParameters": {
        "Automation": {
            "DocumentVersion": "1",
            "Parameters": {
                "instanceId": [
                    "{{RESOURCE_ID}}"
                ]
            }
        }
    }
}
```

### Registrar una tarea de AWS Lambda
<a name="register-tasks-tutorial-lambda"></a>

Los siguientes ejemplos muestran cómo registrar las tareas de la función de Lambda con un periodo de mantenimiento mediante la AWS CLI. 

En estos ejemplos, el usuario que creó la función de Lambda la nombró `SSMrestart-my-instances` y creó dos parámetros denominados `instanceId` y `targetType`.

**importante**  
La política de IAM para Maintenance Windows requiere que se agregue el prefijo `SSM` a los nombres de la función (o alias) de Lambda. Antes de continuar con el registro de este tipo de tareas, actualice el nombre en AWS Lambda para incluir `SSM`. Por ejemplo, si el nombre de la función de Lambda es `MyLambdaFunction`, cámbielo a `SSMMyLambdaFunction`.

**AWS CLI comando:**

------
#### [ Linux & macOS ]

**importante**  
Si está utilizando la versión 2 de la AWS CLI, debe incluir la opción `--cli-binary-format raw-in-base64-out` en el siguiente comando si la carga de Lambda no está codificada en base64. La opción `cli_binary_format` solo está disponible en la versión 2. Para obtener información acerca de esta y otras configuraciones del archivo `config` de la AWS CLI, consulte [Configuraciones del archivo `config` admitidas](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-settings) en la *Guía del usuario de AWS Command Line Interface*.

```
aws ssm register-task-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
    --priority 2 --max-concurrency 10 --max-errors 5 --name "My-Lambda-Example" \
    --description "A description for my LAMBDA example task" --task-type "LAMBDA" \
    --task-arn "arn:aws:lambda:region:123456789012:function:serverlessrepo-SSMrestart-my-instances-C4JF9EXAMPLE" \
    --task-invocation-parameters '{"Lambda":{"Payload":"{\"InstanceId\":\"{{RESOURCE_ID}}\",\"targetType\":\"{{TARGET_TYPE}}\"}","Qualifier": "$LATEST"}}'
```

------
#### [ PowerShell ]

**importante**  
Si está utilizando la versión 2 de la AWS CLI, debe incluir la opción `--cli-binary-format raw-in-base64-out` en el siguiente comando si la carga de Lambda no está codificada en base64. La opción `cli_binary_format` solo está disponible en la versión 2. Para obtener información acerca de esta y otras configuraciones del archivo `config` de la AWS CLI, consulte [Configuraciones del archivo `config` admitidas](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html#cli-configure-files-settings) en la *Guía del usuario de AWS Command Line Interface*.

```
aws ssm register-task-with-maintenance-window `
    --window-id "mw-0c50858d01EXAMPLE" `
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" `
    --priority 2 --max-concurrency 10 --max-errors 5 --name "My-Lambda-Example" `
    --description "A description for my LAMBDA example task" --task-type "LAMBDA" `
    --task-arn "arn:aws:lambda:region:123456789012:function:serverlessrepo-SSMrestart-my-instances-C4JF9EXAMPLE" `
    --task-invocation-parameters '{\"Lambda\":{\"Payload\":\"{\\\"InstanceId\\\":\\\"{{RESOURCE_ID}}\\\",\\\"targetType\\\":\\\"{{TARGET_TYPE}}\\\"}\",\"Qualifier\": \"$LATEST\"}}'
```

------

**Contenido JSON para usar con la opción de archivo `--cli-input-json`:**

```
{
    "WindowId": "mw-0c50858d01EXAMPLE",
    "Targets": [
        {
            "Key": "WindowTargetIds",
            "Values": [
                "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            ]
        }
    ],
    "TaskArn": "SSM_RestartMyInstances",
    "TaskType": "LAMBDA",
    "MaxConcurrency": "10",
    "MaxErrors": "10",
    "TaskInvocationParameters": {
        "Lambda": {
            "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE",
            "Payload": "{ \"instanceId\": \"{{RESOURCE_ID}}\", \"targetType\": \"{{TARGET_TYPE}}\" }",
            "Qualifier": "$LATEST"
        }
    },
    "Name": "My-Lambda-Task",
    "Description": "A description for my LAMBDA task",
    "Priority": 5
}
```

### Registrar una tarea de Step Functions
<a name="register-tasks-tutorial-step-functions"></a>

Los siguientes ejemplos muestran cómo registrar tareas de máquina de estado de Step Functions con un periodo de mantenimiento mediante la AWS CLI.

**nota**  
Las tareas de los periodos de mantenimiento solo admiten los flujos de trabajo de máquinas de estado estándar de Step Functions. No son compatibles con los flujos de trabajo de máquinas de estado rápidas. Para obtener información sobre los tipos de flujos de trabajo de máquinas de estado, consulte [Flujos de trabajo estándar en comparación con flujos de trabajo rápidos](https://docs.aws.amazon.com/step-functions/latest/dg/concepts-standard-vs-express.html) en la *Guía para desarrolladores de AWS Step Functions*.

En estos ejemplos, el usuario que creó la máquina de estado de Step Functions, creó una máquina de estado llamada `SSMMyStateMachine` con un parámetro denominado `instanceId`.

**importante**  
La política de AWS Identity and Access Management (IAM) para Maintenance Windows requiere que se agregue el prefijo `SSM` a los nombres de máquina de estado de Step Functions. Antes de proceder al registro de este tipo de tarea, debe actualizar su nombre en AWS Step Functions para que incluya `SSM`. Por ejemplo, si el nombre de la máquina de estado es `MyStateMachine`, cámbielo a `SSMMyStateMachine`.

**AWS CLI comando:**

------
#### [ Linux & macOS ]

```
aws ssm register-task-with-maintenance-window \
    --window-id "mw-0c50858d01EXAMPLE" \
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
    --task-arn arn:aws:states:region:123456789012:stateMachine:SSMMyStateMachine-MggiqEXAMPLE \
    --task-type STEP_FUNCTIONS \
    --task-invocation-parameters '{"StepFunctions":{"Input":"{\"InstanceId\":\"{{RESOURCE_ID}}\"}", "Name":"{{INVOCATION_ID}}"}}' \
    --priority 0 --max-concurrency 10 --max-errors 5 \
    --name "My-Step-Functions-Task" --description "A description for my Step Functions task"
```

------
#### [ PowerShell ]

```
aws ssm register-task-with-maintenance-window `
    --window-id "mw-0c50858d01EXAMPLE" `
    --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" `
    --task-arn arn:aws:states:region:123456789012:stateMachine:SSMMyStateMachine-MggiqEXAMPLE `
    --task-type STEP_FUNCTIONS `
    --task-invocation-parameters '{\"StepFunctions\":{\"Input\":\"{\\\"InstanceId\\\":\\\"{{RESOURCE_ID}}\\\"}\", \"Name\":\"{{INVOCATION_ID}}\"}}' `
    --priority 0 --max-concurrency 10 --max-errors 5 `
    --name "My-Step-Functions-Task" --description "A description for my Step Functions task"
```

------

**Contenido JSON para usar con la opción de archivo `--cli-input-json`:**

```
{
    "WindowId": "mw-0c50858d01EXAMPLE",
    "Targets": [
        {
            "Key": "WindowTargetIds",
            "Values": [
                "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
            ]
        }
    ],
    "TaskArn": "SSM_MyStateMachine",
    "TaskType": "STEP_FUNCTIONS",
    "MaxConcurrency": "10",
    "MaxErrors": "10",
    "TaskInvocationParameters": {
        "StepFunctions": {
            "Input": "{ \"instanceId\": \"{{TARGET_ID}}\" }",
            "Name": "{{INVOCATION_ID}}"
        }
    },
    "Name": "My-Step-Functions-Task",
    "Description": "A description for my Step Functions task",
    "Priority": 5
}
```

# Opciones de parámetros para el comando register-task-with-maintenance-windows
<a name="mw-cli-task-options"></a>

El comando **register-task-with-maintenance-window** proporciona varias opciones para configurar una tarea en función de sus necesidades. Algunas son obligatorias, otras opcionales y otras solo se aplican a un único tipo de tarea de ventana de mantenimiento.

En este tema se proporciona información sobre algunas de estas opciones para ayudarlo a trabajar con los ejemplos de esta sección del tutorial. Para obtener información acerca de todas las opciones de comandos, consulte **[https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html](https://docs.aws.amazon.com/cli/latest/reference/ssm/register-task-with-maintenance-window.html)** en la *Referencia de comando de la AWS CLI*.

**Opción de comando: `--task-arn`**  
La opción `--task-arn` se usa para especificar el recurso en el que opera la tarea. El valor que se especifica depende del tipo de tarea que se registra, como se describe en la siguiente tabla.


**Formatos de TaskArn para tareas del periodo de mantenimiento**  

| Tipo de tarea de la ventana de mantenimiento | Valor TaskArn | 
| --- | --- | 
|  **`RUN_COMMAND`** y ** `AUTOMATION`**  |  `TaskArn` es el nombre del documento de SSM o el nombre de recurso de Amazon (ARN). Por ejemplo:  `AWS-RunBatchShellScript`  -o bien- `arn:aws:ssm:region:111122223333:document/My-Document`.  | 
|  **`LAMBDA`**  |  `TaskArn` es el nombre de la función o ARN. Por ejemplo:  `SSMMy-Lambda-Function` -o bien- `arn:aws:lambda:region:111122223333:function:SSMMyLambdaFunction`.  La política de IAM para Maintenance Windows requiere que se agregue el prefijo `SSM` a los nombres de la función (o alias) de Lambda. Antes de continuar con el registro de este tipo de tareas, actualice el nombre en AWS Lambda para incluir `SSM`. Por ejemplo, si el nombre de la función de Lambda es `MyLambdaFunction`, cámbielo a `SSMMyLambdaFunction`.   | 
|  **`STEP_FUNCTIONS`**  |  `TaskArn` es el ARN de la máquina de estado. Por ejemplo:  `arn:aws:states:us-east-2:111122223333:stateMachine:SSMMyStateMachine`.  La política de IAM para periodos de mantenimiento requiere que se agregue el prefijo a los nombres de máquina de estado de Step Functions `SSM`. Antes de registrar este tipo de tarea, debe actualizar su nombre en AWS Step Functions para que incluya `SSM`. Por ejemplo, si el nombre de la máquina de estado es `MyStateMachine`, cámbielo a `SSMMyStateMachine`.   | 

**Opción de comando: `--service-role-arn`**  
El rol que AWS Systems Manager debe asumir cuando se ejecuta la tarea del periodo de mantenimiento. 

Para obtener más información, consulte [Configuración de Maintenance Windows](setting-up-maintenance-windows.md)

**Opción de comando: `--task-invocation-parameters`**  
La opción `--task-invocation-parameters` se utiliza para especificar los parámetros que son exclusivos de cada uno de los cuatro tipos de tarea. Los parámetros admitidos para cada uno de estos cuatro tipos se describen en la tabla siguiente.

**nota**  
Para obtener información acerca de cómo utilizar los pseudoparámetros en contenido `--task-invocation-parameters`, como \$1\$1TARGET\$1ID\$1\$1, consulte [Utilización de pseudoparámetros en el registro de las tareas del periodo de mantenimiento](maintenance-window-tasks-pseudo-parameters.md). 

Opciones de los parámetros de invocación de tareas de periodos de mantenimiento


| Tipo de tarea de la ventana de mantenimiento | Parámetros disponibles  | Ejemplo | 
| --- | --- | --- | 
|  **`RUN_COMMAND`**  |  `Comment` `DocumentHash` `DocumentHashType` `NotificationConfig` `OutputS3BucketName` `OutPutS3KeyPrefix` `Parameters` `ServiceRoleArn` `TimeoutSeconds`  |  <pre>"TaskInvocationParameters": {<br />        "RunCommand": {<br />            "Comment": "My Run Command task comment",<br />            "DocumentHash": "6554ed3d--truncated--5EXAMPLE",<br />            "DocumentHashType": "Sha256",<br />            "NotificationConfig": {<br />                "NotificationArn": "arn:aws:sns:region:123456789012:my-sns-topic-name",<br />                "NotificationEvents": [<br />                    "FAILURE"<br />                ],<br />                "NotificationType": "Invocation"<br />            },<br />            "OutputS3BucketName": "amzn-s3-demo-bucket",<br />            "OutputS3KeyPrefix": "S3-PREFIX",<br />            "Parameters": {<br />                "commands": [<br />                    "Get-ChildItem$env: temp-Recurse|Remove-Item-Recurse-force"<br />                ]<br />            },<br />            "ServiceRoleArn": "arn:aws:iam::123456789012:role/MyMaintenanceWindowServiceRole",<br />            "TimeoutSeconds": 3600<br />        }<br />    }</pre>  | 
|  **`AUTOMATION`**  |  `DocumentVersion` `Parameters`  |  <pre>"TaskInvocationParameters": {<br />        "Automation": {<br />            "DocumentVersion": "3",<br />            "Parameters": {<br />                "instanceid": [<br />                    "{{TARGET_ID}}"<br />                ]<br />            }<br />        }<br />    }</pre>  | 
|  **`LAMBDA`**  |  `ClientContext` `Payload` `Qualifier`  |  <pre>"TaskInvocationParameters": {<br />        "Lambda": {<br />            "ClientContext": "ew0KICAi--truncated--0KIEXAMPLE",<br />            "Payload": "{ \"targetId\": \"{{TARGET_ID}}\", \"targetType\": \"{{TARGET_TYPE}}\" }",<br />            "Qualifier": "$LATEST"<br />        }<br />    }</pre>  | 
|  **`STEP_FUNCTIONS`**  |  `Input` `Name`  |  <pre>"TaskInvocationParameters": {<br />        "StepFunctions": {<br />            "Input": "{ \"targetId\": \"{{TARGET_ID}}\" }",<br />            "Name": "{{INVOCATION_ID}}"<br />        }<br />    }</pre>  | 

# Tutorial: vea información sobre periodos de mantenimiento mediante la AWS CLI
<a name="maintenance-windows-cli-tutorials-describe"></a>

Este tutorial incluye comandos para ayudarle a actualizar u obtener información sobre sus periodos de mantenimiento, tareas, ejecuciones e invocaciones. Los ejemplos están organizados por comando para mostrar cómo utilizar las opciones de comando para filtrar el tipo de detalle que desea ver.

A medida que siga los pasos que se indican en este tutorial, reemplace los valores en *rojo* y cursiva por sus propias opciones y sus ID. Por ejemplo, reemplace el ID del periodo de mantenimiento *mw-0c50858d01EJEMPLO* y el ID de la instancia *i-02573cafcfEJEMPLO* por los ID de los recursos que usted cree.

Para obtener información acerca de la instalación y configuración de AWS Command Line Interface (AWS CLI), consulte [Instalación, actualización y desinstalación de AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) y [Configuración de AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

**Topics**
+ [Ejemplos de “describe-maintenance-windows”](#mw-cli-tutorials-describe-maintenance-windows)
+ [Ejemplos de “describe-maintenance-window-targets”](#mw-cli-tutorials-describe-maintenance-window-targets)
+ [Ejemplos de “describe-maintenance-window-tasks”](#mw-cli-tutorials-describe-maintenance-window-tasks)
+ [Ejemplos de “describe-maintenance-windows-for-target”](#mw-cli-tutorials-describe-maintenance-windows-for-target)
+ [Ejemplos de “describe-maintenance-window-executions”](#mw-cli-tutorials-describe-maintenance-window-executions)
+ [Ejemplos de “describe-maintenance-window-schedule”](#mw-cli-tutorials-describe-maintenance-window-schedule)

## Ejemplos de “describe-maintenance-windows”
<a name="mw-cli-tutorials-describe-maintenance-windows"></a>

**Enumerar todos los periodos de mantenimiento de su Cuenta de AWS**  
Ejecute el siguiente comando.

```
aws ssm describe-maintenance-windows
```

El sistema devuelve información similar a la siguiente.

```
{
   "WindowIdentities":[
      {
         "WindowId":"mw-0c50858d01EXAMPLE",
         "Name":"My-First-Maintenance-Window",
         "Enabled":true,
         "Duration":2,
         "Cutoff":0,
         "NextExecutionTime": "2019-05-18T17:01:01.137Z"        
      },
      {
         "WindowId":"mw-9a8b7c6d5eEXAMPLE",
         "Name":"My-Second-Maintenance-Window",
         "Enabled":true,
         "Duration":4,
         "Cutoff":1,
         "NextExecutionTime": "2019-05-30T03:30:00.137Z"        
      },
   ]
}
```

**Enumerar todos los períodos de mantenimiento habilitados**  
Ejecute el siguiente comando.

```
aws ssm describe-maintenance-windows --filters "Key=Enabled,Values=true"
```

El sistema devuelve información similar a la siguiente.

```
{
   "WindowIdentities":[
      {
         "WindowId":"mw-0c50858d01EXAMPLE",
         "Name":"My-First-Maintenance-Window",
         "Enabled":true,
         "Duration":2,
         "Cutoff":0,
         "NextExecutionTime": "2019-05-18T17:01:01.137Z"        
      },
      {
         "WindowId":"mw-9a8b7c6d5eEXAMPLE",
         "Name":"My-Second-Maintenance-Window",
         "Enabled":true,
         "Duration":4,
         "Cutoff":1,
         "NextExecutionTime": "2019-05-30T03:30:00.137Z"        
      },
   ]
}
```

**Enumerar todos los períodos de mantenimiento deshabilitados**  
Ejecute el siguiente comando.

```
aws ssm describe-maintenance-windows --filters "Key=Enabled,Values=false"
```

El sistema devuelve información similar a la siguiente.

```
{
    "WindowIdentities": [
        {
            "WindowId": "mw-6e5c9d4b7cEXAMPLE",
            "Name": "My-Disabled-Maintenance-Window",
            "Enabled": false,
            "Duration": 2,
            "Cutoff": 1
        }
    ]
}
```

**Enumerar todos los periodos de mantenimiento que tienen nombres que comienzan por un prefijo determinado**  
Ejecute el siguiente comando.

```
aws ssm describe-maintenance-windows --filters "Key=Name,Values=My"
```

El sistema devuelve información similar a la siguiente.

```
{
    "WindowIdentities": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "Enabled": true,
            "Duration": 2,
            "Cutoff": 0,
            "NextExecutionTime": "2019-05-18T17:01:01.137Z"
        },
        {
            "WindowId": "mw-9a8b7c6d5eEXAMPLE",
            "Name": "My-Second-Maintenance-Window",
            "Enabled": true,
            "Duration": 4,
            "Cutoff": 1,
            "NextExecutionTime": "2019-05-30T03:30:00.137Z"
        },
        {
            "WindowId": "mw-6e5c9d4b7cEXAMPLE",
            "Name": "My-Disabled-Maintenance-Window",
            "Enabled": false,
            "Duration": 2,
            "Cutoff": 1
        }
    ]
}
```

## Ejemplos de “describe-maintenance-window-targets”
<a name="mw-cli-tutorials-describe-maintenance-window-targets"></a>

**Mostrar los destinos de un período de mantenimiento que coincida con un valor específico de información del propietario**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-targets \
    --window-id "mw-6e5c9d4b7cEXAMPLE" \
    --filters "Key=OwnerInformation,Values=CostCenter1"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-targets ^
    --window-id "mw-6e5c9d4b7cEXAMPLE" ^
    --filters "Key=OwnerInformation,Values=CostCenter1"
```

------

**nota**  
Las claves de filtro admitidas son `Type`, `WindowTargetId` y `OwnerInformation`.

El sistema devuelve información similar a la siguiente.

```
{
    "Targets": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE",
            "ResourceType": "INSTANCE",
            "Targets": [
                {
                    "Key": "tag:Name",
                    "Values": [
                        "Production"
                    ]
                }
            ],
            "OwnerInformation": "CostCenter1",
            "Name": "Target1"
        }
    ]
}
```

## Ejemplos de “describe-maintenance-window-tasks”
<a name="mw-cli-tutorials-describe-maintenance-window-tasks"></a>

**Mostrar todas las tareas registradas que invoquen el documento de Command de SSM `AWS-RunPowerShellScript`**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-tasks \
    --window-id "mw-0c50858d01EXAMPLE" \
    --filters "Key=TaskArn,Values=AWS-RunPowerShellScript"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-tasks ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --filters "Key=TaskArn,Values=AWS-RunPowerShellScript"
```

------

El sistema devuelve información similar a la siguiente.

```
{
   "Tasks":[
      {
         "ServiceRoleArn": "arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
         "MaxErrors":"1",
         "TaskArn":"AWS-RunPowerShellScript",
         "MaxConcurrency":"1",
         "WindowTaskId":"4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
         "TaskParameters":{
            "commands":{
               "Values":[
                  "driverquery.exe"
               ]
            }
         },
         "Priority":3,
         "Type":"RUN_COMMAND",
         "Targets":[
            {
               "TaskTargetId":"i-02573cafcfEXAMPLE",
               "TaskTargetType":"INSTANCE"
            }
         ]
      },
      {
         "ServiceRoleArn":"arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
         "MaxErrors":"1",
         "TaskArn":"AWS-RunPowerShellScript",
         "MaxConcurrency":"1",
         "WindowTaskId":"4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
         "TaskParameters":{
            "commands":{
               "Values":[
                  "ipconfig"
               ]
            }
         },
         "Priority":1,
         "Type":"RUN_COMMAND",
         "Targets":[
            {
               "TaskTargetId":"i-02573cafcfEXAMPLE",
               "TaskTargetType":"WINDOW_TARGET"
            }
         ]
      }
   ]
}
```

**Visualización de todas las tareas registradas que tengan una prioridad de "3"**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-tasks \
    --window-id "mw-9a8b7c6d5eEXAMPLE" \
    --filters "Key=Priority,Values=3"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-tasks ^
    --window-id "mw-9a8b7c6d5eEXAMPLE" ^
    --filters "Key=Priority,Values=3"
```

------

El sistema devuelve información similar a la siguiente.

```
{
   "Tasks":[
      {
         "ServiceRoleArn":"arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
         "MaxErrors":"1",
         "TaskArn":"AWS-RunPowerShellScript",
         "MaxConcurrency":"1",
         "WindowTaskId":"4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
         "TaskParameters":{
            "commands":{
               "Values":[
                  "driverquery.exe"
               ]
            }
         },
         "Priority":3,
         "Type":"RUN_COMMAND",
         "Targets":[
            {
               "TaskTargetId":"i-02573cafcfEXAMPLE",
               "TaskTargetType":"INSTANCE"
            }
         ]
      }
   ]
}
```

**Mostrar todas las tareas registradas que tengan una prioridad de "1" y usar Run Command**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-tasks \
    --window-id "mw-0c50858d01EXAMPLE" \
    --filters "Key=Priority,Values=1" "Key=TaskType,Values=RUN_COMMAND"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-tasks ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --filters "Key=Priority,Values=1" "Key=TaskType,Values=RUN_COMMAND"
```

------

El sistema devuelve información similar a la siguiente.

```
{
    "Tasks": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
            "TaskArn": "AWS-RunShellScript",
            "Type": "RUN_COMMAND",
            "Targets": [
                {
                    "Key": "InstanceIds",
                    "Values": [
                        "i-02573cafcfEXAMPLE"
                    ]
                }
            ],
            "TaskParameters": {},
            "Priority": 1,
            "ServiceRoleArn": "arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
            "MaxConcurrency": "1",
            "MaxErrors": "1"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "WindowTaskId": "8a5c4629-31b0-4edd-8aea-33698EXAMPLE",
            "TaskArn": "AWS-UpdateSSMAgent",
            "Type": "RUN_COMMAND",
            "Targets": [
                {
                    "Key": "InstanceIds",
                    "Values": [
                        "i-0471e04240EXAMPLE"
                    ]
                }
            ],
            "TaskParameters": {},
            "Priority": 1,
            "ServiceRoleArn": "arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
            "MaxConcurrency": "1",
            "MaxErrors": "1",
            "Name": "My-Run-Command-Task",
            "Description": "My Run Command task to update SSM Agent on an instance"
        }
    ]
}
```

## Ejemplos de “describe-maintenance-windows-for-target”
<a name="mw-cli-tutorials-describe-maintenance-windows-for-target"></a>

**Mostrar información acerca de los destinos de periodo de mantenimiento o las tareas asociadas con un nodo específico**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-windows-for-target \
    --resource-type INSTANCE \
    --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" \
    --max-results 10
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-windows-for-target ^
    --resource-type INSTANCE ^
    --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE" ^
    --max-results 10
```

------

El sistema devuelve información similar a la siguiente.

```
{
    "WindowIdentities": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window"
        },
        {
            "WindowId": "mw-9a8b7c6d5eEXAMPLE",
            "Name": "My-Second-Maintenance-Window"
        }
    ]
}
```

## Ejemplos de “describe-maintenance-window-executions”
<a name="mw-cli-tutorials-describe-maintenance-window-executions"></a>

**Enumerar todas las tareas ejecutadas antes de una fecha determinada**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-executions \
    --window-id "mw-9a8b7c6d5eEXAMPLE" \
    --filters "Key=ExecutedBefore,Values=2019-05-12T05:00:00Z"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-executions ^
    --window-id "mw-9a8b7c6d5eEXAMPLE" ^
    --filters "Key=ExecutedBefore,Values=2019-05-12T05:00:00Z"
```

------

El sistema devuelve información similar a la siguiente.

```
{
    "WindowExecutions": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
            "Status": "FAILED",
            "StatusDetails": "The following SSM parameters are invalid: LevelUp",
            "StartTime": 1557617747.993,
            "EndTime": 1557617748.101
        },
        {
            "WindowId": "mw-9a8b7c6d5eEXAMPLE",
            "WindowExecutionId": "791b72e0-f0da-4021-8b35-f95dfEXAMPLE",
            "Status": "SUCCESS",
            "StartTime": 1557594085.428,
            "EndTime": 1557594090.978
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "WindowExecutionId": "ecec60fa-6bb0-4d26-98c7-140308EXAMPLE",
            "Status": "SUCCESS",
            "StartTime": 1557593793.483,
            "EndTime": 1557593798.978
        }
    ]
}
```

**Enumerar todas las tareas ejecutadas después de una fecha determinada**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-executions \
    --window-id "mw-9a8b7c6d5eEXAMPLE" \
    --filters "Key=ExecutedAfter,Values=2018-12-31T17:00:00Z"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-executions ^
    --window-id "mw-9a8b7c6d5eEXAMPLE" ^
    --filters "Key=ExecutedAfter,Values=2018-12-31T17:00:00Z"
```

------

El sistema devuelve información similar a la siguiente.

```
{
    "WindowExecutions": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
            "Status": "FAILED",
            "StatusDetails": "The following SSM parameters are invalid: LevelUp",
            "StartTime": 1557617747.993,
            "EndTime": 1557617748.101
        },
        {
            "WindowId": "mw-9a8b7c6d5eEXAMPLE",
            "WindowExecutionId": "791b72e0-f0da-4021-8b35-f95dfEXAMPLE",
            "Status": "SUCCESS",
            "StartTime": 1557594085.428,
            "EndTime": 1557594090.978
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "WindowExecutionId": "ecec60fa-6bb0-4d26-98c7-140308EXAMPLE",
            "Status": "SUCCESS",
            "StartTime": 1557593793.483,
            "EndTime": 1557593798.978
        }
    ]
}
```

## Ejemplos de “describe-maintenance-window-schedule”
<a name="mw-cli-tutorials-describe-maintenance-window-schedule"></a>

**Mostrar las próximas diez ejecuciones programadas de periodo de mantenimiento para un nodo determinado**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-schedule \
    --resource-type INSTANCE \
    --targets "Key=InstanceIds,Values=i-07782c72faEXAMPLE" \
    --max-results 10
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-schedule ^
    --resource-type INSTANCE ^
    --targets "Key=InstanceIds,Values=i-07782c72faEXAMPLE" ^
    --max-results 10
```

------

El sistema devuelve información similar a la siguiente.

```
{
    "ScheduledWindowExecutions": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "ExecutionTime": "2019-05-18T23:35:24.902Z"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "ExecutionTime": "2019-05-25T23:35:24.902Z"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "ExecutionTime": "2019-06-01T23:35:24.902Z"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "ExecutionTime": "2019-06-08T23:35:24.902Z"
        },
        {
            "WindowId": "mw-9a8b7c6d5eEXAMPLE",
            "Name": "My-Second-Maintenance-Window",
            "ExecutionTime": "2019-06-15T23:35:24.902Z"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "ExecutionTime": "2019-06-22T23:35:24.902Z"
        },
        {
            "WindowId": "mw-9a8b7c6d5eEXAMPLE",
            "Name": "My-Second-Maintenance-Window",
            "ExecutionTime": "2019-06-29T23:35:24.902Z"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "ExecutionTime": "2019-07-06T23:35:24.902Z"
        },
        {
            "WindowId": "mw-9a8b7c6d5eEXAMPLE",
            "Name": "My-Second-Maintenance-Window",
            "ExecutionTime": "2019-07-13T23:35:24.902Z"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "My-First-Maintenance-Window",
            "ExecutionTime": "2019-07-20T23:35:24.902Z"
        }
    ],
    "NextToken": "AAEABUXdceT92FvtKld/dGHELj5Mi+GKW/EXAMPLE"
}
```

**Mostrar el programa de periodo de mantenimiento para los nodos etiquetados con un determinado par clave-valor**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-schedule \
    --resource-type INSTANCE \
    --targets "Key=tag:prod,Values=rhel7"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-schedule ^
    --resource-type INSTANCE ^
    --targets "Key=tag:prod,Values=rhel7"
```

------

El sistema devuelve información similar a la siguiente.

```
{
    "ScheduledWindowExecutions": [
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "DemoRateStartDate",
            "ExecutionTime": "2019-10-20T05:34:56-07:00"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "DemoRateStartDate",
            "ExecutionTime": "2019-10-21T05:34:56-07:00"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "DemoRateStartDate",
            "ExecutionTime": "2019-10-22T05:34:56-07:00"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "DemoRateStartDate",
            "ExecutionTime": "2019-10-23T05:34:56-07:00"
        },
        {
            "WindowId": "mw-0c50858d01EXAMPLE",
            "Name": "DemoRateStartDate",
            "ExecutionTime": "2019-10-24T05:34:56-07:00"
        }
    ],
    "NextToken": "AAEABccwSXqQRGKiTZ1yzGELR6cxW4W/EXAMPLE"
}
```

**Mostrar las horas de inicio para las cuatro siguientes ejecuciones de un periodo de mantenimiento**  
Ejecute el siguiente comando.

------
#### [ Linux & macOS ]

```
aws ssm describe-maintenance-window-schedule \
    --window-id "mw-0c50858d01EXAMPLE" \
    --max-results "4"
```

------
#### [ Windows ]

```
aws ssm describe-maintenance-window-schedule ^
    --window-id "mw-0c50858d01EXAMPLE" ^
    --max-results "4"
```

------

El sistema devuelve información similar a la siguiente.

```
{
    "WindowSchedule": [
        {
            "ScheduledWindowExecutions": [
                {
                    "ExecutionTime": "2019-10-04T10:10:10Z",
                    "Name": "My-First-Maintenance-Window",
                    "WindowId": "mw-0c50858d01EXAMPLE"
                },
                {
                    "ExecutionTime": "2019-10-11T10:10:10Z",
                    "Name": "My-First-Maintenance-Window",
                    "WindowId": "mw-0c50858d01EXAMPLE"
                },
                {
                    "ExecutionTime": "2019-10-18T10:10:10Z",
                    "Name": "My-First-Maintenance-Window",
                    "WindowId": "mw-0c50858d01EXAMPLE"
                },
                {
                    "ExecutionTime": "2019-10-25T10:10:10Z",
                    "Name": "My-First-Maintenance-Window",
                    "WindowId": "mw-0c50858d01EXAMPLE"
                }
            ]
        }
    ]
}
```

# Tutorial: visualización de información sobre tareas y ejecuciones de tareas mediante la AWS CLI
<a name="mw-cli-tutorial-task-info"></a>

En este tutorial, se muestra cómo utilizar la AWS Command Line Interface (AWS CLI) para ver los detalles de las tareas completadas del periodo de mantenimiento. 

Si continua directamente desde [Tutorial: cree y configure un periodo de mantenimiento mediante la AWS CLI](maintenance-windows-cli-tutorials-create.md), asegúrese de haber dejado suficiente tiempo para que se ejecute el periodo de mantenimiento al menos una vez para ver los resultados de la ejecución.

A medida que siga los pasos que se indican en este tutorial, reemplace los valores en *rojo* y cursiva por sus propias opciones y sus ID. Por ejemplo, reemplace el ID del periodo de mantenimiento *mw-0c50858d01EJEMPLO* y el ID de la instancia *i-02573cafcfEJEMPLO* por los ID de los recursos que usted cree.

**Para visualizar información sobre tareas y ejecuciones de tareas mediante la AWS CLI**

1. Ejecute el siguiente comando para ver una lista de las ejecuciones de las tareas de un periodo de mantenimiento determinado.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-executions \
       --window-id "mw-0c50858d01EXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-executions ^
       --window-id "mw-0c50858d01EXAMPLE"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowExecutions": [
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
               "Status": "SUCCESS",
               "StartTime": 1557593793.483,
               "EndTime": 1557593798.978
           },
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowExecutionId": "791b72e0-f0da-4021-8b35-f95dfEXAMPLE",
               "Status": "SUCCESS",
               "StartTime": 1557593493.096,
               "EndTime": 1557593498.611
           },
           {
               "WindowId": "mw-0c50858d01EXAMPLE",
               "WindowExecutionId": "ecec60fa-6bb0-4d26-98c7-140308EXAMPLE",
               "Status": "SUCCESS",
               "StatusDetails": "No tasks to execute.",
               "StartTime": 1557593193.309,
               "EndTime": 1557593193.334
           }
       ]
   }
   ```

1. Ejecute el siguiente comando para obtener información sobre la ejecución de una tarea del periodo de mantenimiento.

------
#### [ Linux & macOS ]

   ```
   aws ssm get-maintenance-window-execution \
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm get-maintenance-window-execution ^
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
       "TaskIds": [
           "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE"
       ],
       "Status": "SUCCESS",
       "StartTime": 1557593493.096,
       "EndTime": 1557593498.611
   }
   ```

1. Ejecute el siguiente comando para enumerar las tareas ejecutadas como parte de una ejecución del periodo de mantenimiento.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-execution-tasks \
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-execution-tasks ^
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowExecutionTaskIdentities": [
           {
               "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
               "TaskExecutionId": "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE",
               "Status": "SUCCESS",
               "StartTime": 1557593493.162,
               "EndTime": 1557593498.57,
               "TaskArn": "AWS-RunShellScript",
               "TaskType": "RUN_COMMAND"
           }
       ]
   }
   ```

1. Ejecute el siguiente comando para obtener los detalles de una ejecución de tareas.

------
#### [ Linux & macOS ]

   ```
   aws ssm get-maintenance-window-execution-task \
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE" \
       --task-id "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm get-maintenance-window-execution-task ^
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE" ^
       --task-id "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
       "TaskExecutionId": "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE",
       "TaskArn": "AWS-RunShellScript",
       "ServiceRole": "arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
       "Type": "RUN_COMMAND",
       "TaskParameters": [
           {
               "aws:InstanceId": {
                   "Values": [
                       "i-02573cafcfEXAMPLE"
                   ]
               },
               "commands": {
                   "Values": [
                       "df"
                   ]
               }
           }
       ],
       "Priority": 10,
       "MaxConcurrency": "1",
       "MaxErrors": "1",
       "Status": "SUCCESS",
       "StartTime": 1557593493.162,
       "EndTime": 1557593498.57
   }
   ```

1. Ejecute el siguiente comando para obtener las invocaciones de tareas concretas realizadas en una ejecución de tareas.

------
#### [ Linux & macOS ]

   ```
   aws ssm describe-maintenance-window-execution-task-invocations \
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE" \
       --task-id "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE"
   ```

------
#### [ Windows ]

   ```
   aws ssm describe-maintenance-window-execution-task-invocations ^
       --window-execution-id "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE" ^
       --task-id "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowExecutionTaskInvocationIdentities": [
           {
               "WindowExecutionId": "14bea65d-5ccc-462d-a2f3-e99c8EXAMPLE",
               "TaskExecutionId": "c9b05aba-197f-4d8d-be34-e73fbEXAMPLE",
               "InvocationId": "c336d2ab-09de-44ba-8f6a-6136cEXAMPLE",
               "ExecutionId": "76a5a04f-caf6-490c-b448-92c02EXAMPLE",
               "TaskType": "RUN_COMMAND",
               "Parameters": "{\"documentName\":\"AWS-RunShellScript\",\"instanceIds\":[\"i-02573cafcfEXAMPLE\"],\"maxConcurrency\":\"1\",\"maxErrors\":\"1\",\"parameters\":{\"commands\":[\"df\"]}}",
               "Status": "SUCCESS",
               "StatusDetails": "Success",
               "StartTime": 1557593493.222,
               "EndTime": 1557593498.466
           }
       ]
   }
   ```

# Tutorial actualización de un periodo de mantenimiento mediante la AWS CLI
<a name="maintenance-windows-cli-tutorials-update"></a>

En este tutorial, se muestra cómo utilizar la AWS Command Line Interface (AWS CLI) para actualizar un periodo de mantenimiento. También se muestra cómo actualizar diferentes tipos de tarea, incluidos aquellos para AWS Systems Manager Run Command y Automation, AWS Lambda y AWS Step Functions. 

En los ejemplos que aparecen en esta sección, se utilizan las siguientes acciones de Systems Manager para actualizar un periodo de mantenimiento:
+ [UpdateMaintenanceWindow](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_UpdateMaintenanceWindow.html)
+ [UpdateMaintenanceWindowTarget](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_UpdateMaintenanceWindowTarget.html)
+ [UpdateMaintenanceWindowTask](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_UpdateMaintenanceWindowTask.html)
+ [DeregisterTargetFromMaintenanceWindow](https://docs.aws.amazon.com/systems-manager/latest/APIReference/API_DeregisterTargetFromMaintenanceWindow.html)

Para obtener información acerca de cómo utilizar la consola de Systems Manager para actualizar un periodo de mantenimiento, consulte [Actualizar o eliminar recursos de un periodo de mantenimiento mediante la consola](sysman-maintenance-update.md). 

A medida que siga los pasos que se indican en este tutorial, reemplace los valores en *rojo* y cursiva por sus propias opciones y sus ID. Por ejemplo, reemplace el ID del periodo de mantenimiento *mw-0c50858d01EJEMPLO* y el ID de la instancia *i-02573cafcfEJEMPLO* por los ID de los recursos que usted cree.

**Para actualizar un periodo de mantenimiento mediante la AWS CLI**

1. Abra el AWS CLI y ejecute el siguiente comando para actualizar un destino e incluir un nombre y una descripción.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window-target \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-target-id "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
       --name "My-Maintenance-Window-Target" \
       --description "Description for my maintenance window target"
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window-target ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-target-id "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ^
       --name "My-Maintenance-Window-Target" ^
       --description "Description for my maintenance window target"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE",
       "Targets": [
           {
               "Key": "InstanceIds",
               "Values": [
                   "i-02573cafcfEXAMPLE"
               ]
           }
       ],
       "Name": "My-Maintenance-Window-Target",
       "Description": "Description for my maintenance window target"
   }
   ```

1. Ejecute el siguiente comando si desea utilizar la opción `replace` para eliminar el campo de descripción y agregar un destino adicional. El campo de descripción se elimina, ya que la actualización no incluye el campo (un valor nulo). Asegúrese de especificar un nodo adicional que se haya configurado para utilizarse con Systems Manager.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window-target \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-target-id "d208dedf-3f6b-41ff-ace8-8e751EXAMPLE" \
       --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE" \
       --name "My-Maintenance-Window-Target" \
       --replace
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window-target ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-target-id "d208dedf-3f6b-41ff-ace8-8e751EXAMPLE" ^
       --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE,i-0471e04240EXAMPLE" ^
       --name "My-Maintenance-Window-Target" ^
       --replace
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE",
       "Targets": [
           {
               "Key": "InstanceIds",
               "Values": [
                   "i-02573cafcfEXAMPLE",
                   "i-0471e04240EXAMPLE"
               ]
           }
       ],
       "Name": "My-Maintenance-Window-Target"
   }
   ```

1. La opción `start-date` permite retrasar la activación de un periodo de mantenimiento hasta una fecha futura especificada. La opción `end-date` permite establecer una fecha y hora en el futuro después de la cual el periodo de mantenimiento dejará de ejecutarse. Especifique las opciones de formato extendido ISO-8601.

   Ejecute el siguiente comando para especificar un intervalo de fecha y hora para ejecuciones programadas de forma regular del periodo de mantenimiento.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window \
       --window-id "mw-0c50858d01EXAMPLE" \
       --start-date "2020-10-01T10:10:10Z" \
       --end-date "2020-11-01T10:10:10Z"
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --start-date "2020-10-01T10:10:10Z" ^
       --end-date "2020-11-01T10:10:10Z"
   ```

------

1. Ejecute el siguiente comando para actualizar una tarea del Run Command.
**sugerencia**  
Si su destino es una instancia de Amazon Elastic Compute Cloud (Amazon EC2) para Windows Server, cambie `df` a `ipconfig` y `AWS-RunShellScript` a `AWS-RunPowerShellScript` en el siguiente comando.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window-task \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" \
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
       --task-arn "AWS-RunShellScript" \
       --service-role-arn "arn:aws:iam::account-id:role/MaintenanceWindowsRole" \
       --task-invocation-parameters "RunCommand={Comment=Revising my Run Command task,Parameters={commands=df}}" \
       --priority 1 --max-concurrency 10 --max-errors 4 \
       --name "My-Task-Name" --description "A description for my Run Command task"
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window-task ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" ^
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ^
       --task-arn "AWS-RunShellScript" ^
       --service-role-arn "arn:aws:iam::account-id:role/MaintenanceWindowsRole" ^
       --task-invocation-parameters "RunCommand={Comment=Revising my Run Command task,Parameters={commands=df}}" ^
       --priority 1 --max-concurrency 10 --max-errors 4 ^
       --name "My-Task-Name" --description "A description for my Run Command task"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
       "Targets": [
           {
               "Key": "WindowTargetIds",
               "Values": [
                   "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
               ]
           }
       ],
       "TaskArn": "AWS-RunShellScript",
       "ServiceRoleArn": "arn:aws:iam::111122223333:role/MaintenanceWindowsRole",
       "TaskParameters": {},
       "TaskInvocationParameters": {
           "RunCommand": {
               "Comment": "Revising my Run Command task",
               "Parameters": {
                   "commands": [
                       "df"
                   ]
               }
           }
       },
       "Priority": 1,
       "MaxConcurrency": "10",
       "MaxErrors": "4",
       "Name": "My-Task-Name",
       "Description": "A description for my Run Command task"
   }
   ```

1. Adapte y ejecute el siguiente comando para actualizar una tarea de Lambda.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window-task \
       --window-id mw-0c50858d01EXAMPLE \
       --window-task-id 4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE \
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
       --task-arn "arn:aws:lambda:region:111122223333:function:SSMTestLambda" \
       --service-role-arn "arn:aws:iam:account-id:role/MaintenanceWindowsRole" \
       --task-invocation-parameters '{"Lambda":{"Payload":"{\"InstanceId\":\"{{RESOURCE_ID}}\",\"targetType\":\"{{TARGET_TYPE}}\"}"}}' \
       --priority 1 --max-concurrency 10 --max-errors 5 \
       --name "New-Lambda-Task-Name" \
       --description "A description for my Lambda task"
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window-task ^
       --window-id mw-0c50858d01EXAMPLE ^
       --window-task-id 4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE ^
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ^
       --task-arn --task-arn "arn:aws:lambda:region:111122223333:function:SSMTestLambda" ^
       --service-role-arn "arn:aws:iam:account-id:role/MaintenanceWindowsRole" ^
       --task-invocation-parameters '{"Lambda":{"Payload":"{\"InstanceId\":\"{{RESOURCE_ID}}\",\"targetType\":\"{{TARGET_TYPE}}\"}"}}' ^
       --priority 1 --max-concurrency 10 --max-errors 5 ^
       --name "New-Lambda-Task-Name" ^
       --description "A description for my Lambda task"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
       "Targets": [
           {
               "Key": "WindowTargetIds",
               "Values": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
           }
       ],
       "TaskArn": "arn:aws:lambda:us-east-2:111122223333:function:SSMTestLambda",
       "ServiceRoleArn": "arn:aws:iam::111122223333:role/MaintenanceWindowsRole",
       "TaskParameters": {},
       "TaskInvocationParameters": {
           "Lambda": {
               "Payload": "e30="
           }
       },
       "Priority": 1,
       "MaxConcurrency": "10",
       "MaxErrors": "5",
       "Name": "New-Lambda-Task-Name",
       "Description": "A description for my Lambda task"
   }
   ```

1. Si está actualizando una tarea de Step Functions, adapte y ejecute el siguiente comando para actualizar los parámetros de invocación de tareas.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window-task \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" \
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
       --task-arn "arn:aws:states:region:execution:SSMStepFunctionTest" \
       --service-role-arn "arn:aws:iam:account-id:role/MaintenanceWindowsRole" \
       --task-invocation-parameters '{"StepFunctions":{"Input":"{\"InstanceId\":\"{{RESOURCE_ID}}\"}"}}' \
       --priority 0 --max-concurrency 10 --max-errors 5 \
       --name "My-Step-Functions-Task" \
       --description "A description for my Step Functions task"
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window-task ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" ^
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ^
       --task-arn "arn:aws:states:region:execution:SSMStepFunctionTest" ^
       --service-role-arn "arn:aws:iam:account-id:role/MaintenanceWindowsRole" ^
       --task-invocation-parameters '{"StepFunctions":{"Input":"{\"InstanceId\":\"{{RESOURCE_ID}}\"}"}}' ^
       --priority 0 --max-concurrency 10 --max-errors 5 ^
       --name "My-Step-Functions-Task" ^
       --description "A description for my Step Functions task"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
       "Targets": [
           {
               "Key": "WindowTargetIds",
               "Values": [
                   "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
               ]
           }
       ],
       "TaskArn": "arn:aws:states:us-east-2:111122223333:execution:SSMStepFunctionTest",
       "ServiceRoleArn": "arn:aws:iam::111122223333:role/MaintenanceWindowsRole",
       "TaskParameters": {},
       "TaskInvocationParameters": {
           "StepFunctions": {
               "Input": "{\"instanceId\":\"{{RESOURCE_ID}}\"}"
           }
       },
       "Priority": 0,
       "MaxConcurrency": "10",
       "MaxErrors": "5",
       "Name": "My-Step-Functions-Task",
       "Description": "A description for my Step Functions task"
   }
   ```

1. Ejecute el siguiente comando para anular el registro de un destino del período de mantenimiento. Este ejemplo utiliza el parámetro `safe` para determinar que el destino no tenga referencias de alguna tarea y, por lo tanto, se pueda anular el registro.

------
#### [ Linux & macOS ]

   ```
   aws ssm deregister-target-from-maintenance-window \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-target-id "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
       --safe
   ```

------
#### [ Windows ]

   ```
   aws ssm deregister-target-from-maintenance-window ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-target-id "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ^
       --safe
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   An error occurred (TargetInUseException) when calling the DeregisterTargetFromMaintenanceWindow operation: 
   This Target cannot be deregistered because it is still referenced in Task: 4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE
   ```

1. Ejecute el siguiente comando para anular el registro de un destino de un período de mantenimiento incluso si el destino tiene referencias de una tarea. Puede forzar la operación de anulación del registro mediante el parámetro `no-safe`.

------
#### [ Linux & macOS ]

   ```
   aws ssm deregister-target-from-maintenance-window \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-target-id "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" \
       --no-safe
   ```

------
#### [ Windows ]

   ```
   aws ssm deregister-target-from-maintenance-window ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-target-id "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE" ^
       --no-safe
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTargetId": "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
   }
   ```

1. Ejecute el siguiente comando para actualizar una tarea del Run Command. En este ejemplo, se utiliza un parámetro de Systems Manager Parameter Store denominado `UpdateLevel`, que tiene el siguiente formato: “`{{ssm:UpdateLevel}}`”.

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window-task \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" \
       --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE"  \
       --task-invocation-parameters "RunCommand={Comment=A comment for my task update,Parameters={UpdateLevel='{{ssm:UpdateLevel}}'}}"
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window-task ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" ^
       --targets "Key=InstanceIds,Values=i-02573cafcfEXAMPLE"  ^
       --task-invocation-parameters "RunCommand={Comment=A comment for my task update,Parameters={UpdateLevel='{{ssm:UpdateLevel}}'}}"
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
       "Targets": [
           {
               "Key": "InstanceIds",
               "Values": [
                   "i-02573cafcfEXAMPLE"
               ]
           }
       ],
       "TaskArn": "AWS-RunShellScript",
       "ServiceRoleArn": "arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
       "TaskParameters": {},
       "TaskInvocationParameters": {
           "RunCommand": {
               "Comment": "A comment for my task update",
               "Parameters": {
                   "UpdateLevel": [
                       "{{ssm:UpdateLevel}}"
                   ]
               }
           }
       },
       "Priority": 10,
       "MaxConcurrency": "1",
       "MaxErrors": "1"
   }
   ```

1. Ejecute el siguiente comando para actualizar una tarea de Automation y especificar los parámetros `WINDOW_ID` y `WINDOW_TASK_ID` para el parámetro `task-invocation-parameters`:

------
#### [ Linux & macOS ]

   ```
   aws ssm update-maintenance-window-task \
       --window-id "mw-0c50858d01EXAMPLE" \
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" \
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE \
       --task-arn "AutoTestDoc" \
       --service-role-arn "arn:aws:iam:account-id:role/MyMaintenanceWindowServiceRole \
       --task-invocation-parameters "Automation={Parameters={InstanceId='{{RESOURCE_ID}}',initiator='{{WINDOW_ID}}.Task-{{WINDOW_TASK_ID}}'}}" \
       --priority 3 --max-concurrency 10 --max-errors 5
   ```

------
#### [ Windows ]

   ```
   aws ssm update-maintenance-window-task ^
       --window-id "mw-0c50858d01EXAMPLE" ^
       --window-task-id "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE" ^
       --targets "Key=WindowTargetIds,Values=e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE ^
       --task-arn "AutoTestDoc" ^
       --service-role-arn "arn:aws:iam:account-id:role/MyMaintenanceWindowServiceRole ^
       --task-invocation-parameters "Automation={Parameters={InstanceId='{{RESOURCE_ID}}',initiator='{{WINDOW_ID}}.Task-{{WINDOW_TASK_ID}}'}}" ^
       --priority 3 --max-concurrency 10 --max-errors 5
   ```

------

   El sistema devuelve información similar a la siguiente.

   ```
   {
       "WindowId": "mw-0c50858d01EXAMPLE",
       "WindowTaskId": "4f7ca192-7e9a-40fe-9192-5cb15EXAMPLE",
       "Targets": [
           {
               "Key": "WindowTargetIds",
               "Values": [
                   "e32eecb2-646c-4f4b-8ed1-205fbEXAMPLE"
               ]
           }
       ],
       "TaskArn": "AutoTestDoc",
       "ServiceRoleArn": "arn:aws:iam::111122223333:role/MyMaintenanceWindowServiceRole",
       "TaskParameters": {},
       "TaskInvocationParameters": {
           "Automation": {
               "Parameters": {
                   "multi": [
                       "{{WINDOW_TASK_ID}}"
                   ],
                   "single": [
                       "{{WINDOW_ID}}"
                   ]
               }
           }
       },
       "Priority": 0,
       "MaxConcurrency": "10",
       "MaxErrors": "5",
       "Name": "My-Automation-Task",
       "Description": "A description for my Automation task"
   }
   ```

# Tutorial: eliminación de un periodo de mantenimiento mediante la AWS CLI
<a name="mw-cli-tutorial-delete-mw"></a>

Para eliminar un periodo de mantenimiento que creó en estos tutoriales, ejecute el siguiente comando.

```
aws ssm delete-maintenance-window --window-id "mw-0c50858d01EXAMPLE"
```

El sistema devuelve información similar a la siguiente.

```
{
   "WindowId":"mw-0c50858d01EXAMPLE"
}
```