

AWS La **experiencia autogestionada de modernización de mainframes** ya no está abierta a nuevos clientes. Para obtener funcionalidades similares a la experiencia autogestionada de modernización de AWS mainframes, explore las capacidades de las ofertas directas del proveedor y de. AWS Transform Los clientes existentes pueden seguir utilizando el servicio con normalidad. [Para obtener más información, consulte AWS Cambio en la disponibilidad de la modernización del mainframe.](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html) 

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

AWS El **servicio de modernización de mainframe (experiencia en entornos de ejecución gestionados)** ya no está abierto a nuevos clientes. Para obtener prestaciones similares a las del Servicio de modernización de AWS mainframe (experiencia en entornos de ejecución gestionados), explore el Servicio de modernización de AWS mainframe (Self-ManagedExperience). Los clientes existentes pueden seguir utilizando el servicio con normalidad. Para obtener más información, consulte Cambio en la disponibilidad de la [modernización de AWS mainframes](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html). 

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Utilidad por lotes M2RUNCMD
<a name="m2runcmd"></a>

Puede utilizar M2RUNCMD, un programa de utilidad por lotes, para ejecutar comandos, scripts y llamadas al sistema de Rocket Software (anteriormente Micro Focus) directamente desde JCL, en lugar de ejecutarlos desde un terminal o una línea de comandos. El resultado de los comandos se registra en el registro spool del trabajo por lotes.

**Topics**
+ [Plataformas admitidas](#m2runcmd-platforms)
+ [Configuración de M2RUNCMD para el tiempo de ejecución de modernización AWS del mainframe en Amazon EC2 (incluida la versión 2.0) AppStream](#m2runcmd-configure)
+ [Ejemplo JCLs](#m2runcmd-sample-jcls)

## Plataformas admitidas
<a name="m2runcmd-platforms"></a>

Puede utilizar M2RUNCMD en las siguientes plataformas:
+ Rocket Software Runtime (en Amazon EC2)
+  Todas las variantes de los productos Rocket Software Enterprise Developer (ED) y Rocket Software Enterprise Server (ES).

## Configuración de M2RUNCMD para el tiempo de ejecución de modernización AWS del mainframe en Amazon EC2 (incluida la versión 2.0) AppStream
<a name="m2runcmd-configure"></a>

Si las aplicaciones migradas se ejecutan en el entorno de ejecución de modernización de AWS mainframe en Amazon EC2, configure M2RUNCMD de la siguiente manera.
+ Cambie la [ruta del programa JES de Micro Focus](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/index.html?t=GUID-BC8A1796-9EDE-48EB-8363-31C9BDE7F96B.html) para incluir la ubicación binaria de las utilidades por lotes. Si necesita especificar varias rutas, utilice dos puntos (:) para separarlas en Linux y punto y coma (;) en Windows.
  + Linux: `/opt/aws/m2/microfocus/utilities/64bit`
  + Windows (32 bits): `C:\AWS\M2\MicroFocus\Utilities\32bit`
  + Windows (64 bits): `C:\AWS\M2\MicroFocus\Utilities\64bit`

## Ejemplo JCLs
<a name="m2runcmd-sample-jcls"></a>

Para probar la instalación, puede utilizar cualquiera de los siguientes ejemplos JCLs.

 **RUNSCRL1.jcl**

En este JCL de ejemplo se crea un script y se ejecuta. El primer paso crea un script denominado `/tmp/TEST_SCRIPT.sh` y con contenido a partir de datos de `SYSUT1` internos. El segundo paso establece el permiso de ejecución y ejecuta el script creado en el primer paso. También puedes elegir realizar solo el segundo paso para ejecutar el software Rocket y los comandos del sistema ya existentes.

```
//RUNSCRL1 JOB 'RUN SCRIPT',CLASS=A,MSGCLASS=X,TIME=1440
//*
//*
//*-------------------------------------------------------------------*
//*  CREATE SCRIPT (LINUX)                                           
//*-------------------------------------------------------------------*
//*
//STEP0010 EXEC PGM=IEBGENER
//*
//SYSPRINT DD SYSOUT=*
//SYSIN    DD DUMMY
//*
//SYSUT1   DD *
#!/bin/bash

set -x

## ECHO PATH ENVIRONMNET VARIABLE
echo $PATH

## CLOSE/DISABLE VSAM FILE
casfile -r$ES_SERVER -oc  -ed -dACCTFIL

## OPEN/ENABLE VSAM FILE
casfile -r$ES_SERVER -ooi -ee -dACCTFIL

exit $?
/*
//SYSUT2   DD DSN=&&TEMP,
//            DISP=(NEW,CATLG,DELETE),
//            DCB=(RECFM=LSEQ,LRECL=300,DSORG=PS,BLKSIZE=0)
//*MFE: %PCDSN='/tmp/TEST_SCRIPT.sh'
//*
//*-------------------------------------------------------------------*
//*   RUN SCRIPT (LINUX)                                              *
//*-------------------------------------------------------------------*
//*
//STEP0020 EXEC PGM=RUNCMD
//*
//SYSOUT  DD  SYSOUT=*
//* 
//SYSIN   DD *
*RUN SCRIPT
 sh /tmp/TEST_SCRIPT.sh
/*
//
```

 **SYSOUT**

El resultado del comando o script que se ejecuta se escribe en el registro `SYSOUT`. Para cada comando ejecutado, muestra el comando, la salida y el código de retorno.

```
************ CMD Start ************   
                                                                                    
CMD_STR: sh /tmp/TEST_SCRIPT.sh                                                                                              
CMD_OUT:                                                                                                                                                                                                                             
+ echo /opt/microfocus/EnterpriseServer/bin:/sbin:/bin:/usr/sbin:/usr/bin    
/opt/microfocus/EnterpriseServer/bin:/sbin:/bin:/usr/sbin:/usr/bin           
+ casfile -rMYDEV -oc -ed -dACCTFIL                                                                       
-Return Code:   0                                                                                                         
Highest return code:    0                                                                                                 
+ casfile -rMYDEV -ooi -ee -dACCTFIL                                                                     
-Return Code:   8                                                                                                         
Highest return code:    8                                                                                                 
+ exit 8                                                                                                                  

CMD_RC=8                                                                                                                  

************  CMD End  ************
```

 **RUNCMDL1.jcl**

Este ejemplo de JCL usa RUNCMD para ejecutar varios comandos.

```
//RUNCMDL1 JOB 'RUN CMD',CLASS=A,MSGCLASS=X,TIME=1440
//*
//*
//*-------------------------------------------------------------------*
//*   RUN SYSTEM COMMANDS                                             *
//*-------------------------------------------------------------------*
//*
//STEP0001 EXEC PGM=RUNCMD
//*
//SYSOUT  DD  SYSOUT=*
//* 
//SYSIN   DD *
*LIST DIRECTORY
 ls
*ECHO PATH ENVIRONMNET VARIABLE
 echo $PATH
/*
//
```