

AWS Layanan Modernisasi Mainframe (Managed Runtime Environment experience) tidak lagi terbuka untuk pelanggan baru. Untuk kemampuan yang mirip dengan Layanan Modernisasi AWS Mainframe (pengalaman Lingkungan Runtime Terkelola), jelajahi Layanan Modernisasi AWS Mainframe (Pengalaman yang Dikelola Sendiri). Pelanggan yang sudah ada dapat terus menggunakan layanan ini seperti biasa. Untuk informasi selengkapnya, lihat Perubahan [AWS ketersediaan Modernisasi Mainframe](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html).

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Utilitas batch M2RUNCMD
<a name="m2runcmd"></a>

Anda dapat menggunakan M2RUNCMD, program utilitas batch, untuk menjalankan perintah, skrip, dan panggilan sistem Rocket Software (sebelumnya Micro Focus) langsung dari JCL alih-alih menjalankannya dari terminal atau command prompt. Output dari perintah dicatat ke log spool pekerjaan batch.

**Topics**
+ [Platform yang didukung](#m2runcmd-platforms)
+ [Konfigurasikan M2RUNCMD untuk runtime Modernisasi AWS Mainframe di Amazon EC2 (termasuk 2.0) AppStream](#m2runcmd-configure)
+ [Sampel JCLs](#m2runcmd-sample-jcls)

## Platform yang didukung
<a name="m2runcmd-platforms"></a>

Anda dapat menggunakan M2RUNCMD pada platform berikut:
+ Runtime Perangkat Lunak Roket (di Amazon EC2)
+  Semua varian produk Rocket Software Enterprise Developer (ED) dan Rocket Software Enterprise Server (ES).

## Konfigurasikan M2RUNCMD untuk runtime Modernisasi AWS Mainframe di Amazon EC2 (termasuk 2.0) AppStream
<a name="m2runcmd-configure"></a>

Jika aplikasi yang dimigrasi berjalan pada runtime Modernisasi AWS Mainframe di Amazon EC2, konfigurasikan M2RUNCMD sebagai berikut.
+ Ubah [Jalur Program Micro Focus JES](https://www.microfocus.com/documentation/enterprise-developer/ed80/ED-Eclipse/index.html?t=GUID-BC8A1796-9EDE-48EB-8363-31C9BDE7F96B.html) untuk menyertakan lokasi biner untuk utilitas batch. Jika Anda harus menentukan beberapa jalur, gunakan titik dua (:) untuk memisahkan jalur di Linux dan titik koma (;) di Windows.
  + Linux: `/opt/aws/m2/microfocus/utilities/64bit`
  + Windows (32bit): `C:\AWS\M2\MicroFocus\Utilities\32bit`
  + Windows (64bit): `C:\AWS\M2\MicroFocus\Utilities\64bit`

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

Untuk menguji instalasi, Anda dapat menggunakan salah satu dari sampel berikut JCLs.

 **RUNSCRL1.jcl**

Contoh JCL ini membuat skrip dan menjalankannya. Langkah pertama membuat skrip yang disebut `/tmp/TEST_SCRIPT.sh` dan dengan konten dari data `SYSUT1` in-stream. Langkah kedua menetapkan izin jalankan dan menjalankan skrip yang dibuat pada langkah pertama. Anda juga dapat memilih untuk hanya melakukan langkah kedua untuk menjalankan Perangkat Lunak Roket dan perintah sistem yang sudah ada.

```
//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**

Output dari perintah atau script yang dijalankan, ditulis ke dalam `SYSOUT` log. Untuk setiap perintah yang dilakukan, ini menampilkan perintah, output, dan kode pengembalian.

```
************ 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**

Contoh JCL ini menggunakan RUNCMD untuk menjalankan beberapa perintah.

```
//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
/*
//
```