As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Você pode usar o M2RUNCMD, um programa utilitário em lote, para executar comandos, scripts e chamadas de sistema da Rocket Software (antiga Micro Focus) diretamente da JCL, em vez de executá-los em um terminal ou prompt de comando. A saída dos comandos é registrada no log de spool do trabalho em lote.
Tópicos
Plataformas compatíveis
É possível usar o M2RUNCMD nas seguintes plataformas:
-
Rocket Software Runtime (na Amazon EC2)
-
Todas as variantes dos produtos Rocket Software Enterprise Developer (ED) e Rocket Software Enterprise Server (ES).
Configure o M2RUNCMD para o tempo de execução de AWS modernização de mainframe na Amazon (incluindo 2.0) EC2 AppStream
Se seus aplicativos migrados estiverem sendo executados em tempo de execução de modernização de AWS mainframe na Amazon EC2, configure o M2RUNCMD da seguinte forma.
-
Altere o caminho do programa Micro Focus JES
para incluir a localização binária dos utilitários em lote. Se precisar especificar vários caminhos, use dois-pontos (:) para separar caminhos no Linux e ponto e vírgula (;) no 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
-
Amostra JCLs
Para testar a instalação, você pode usar qualquer um dos exemplos a seguir JCLs.
RUNSCRL1.jcl
Esse exemplo de JCL cria um script e o executa. A primeira etapa cria um script chamado /tmp/TEST_SCRIPT.sh
e com conteúdo de dados no stream de SYSUT1
. A segunda etapa define a permissão de execução e executa o script criado na primeira etapa. Você também pode optar por realizar apenas a segunda etapa para executar o Rocket Software e os comandos do sistema já 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
A saída do comando ou script executado é gravada no log de SYSOUT
. Para cada comando executado, ele exibe o comando, a saída e o 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 exemplo de JCL usa RUNCMD para executar vários 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
/*
//