📅  最后修改于: 2023-12-03 15:02:07.311000             🧑  作者: Mango
JCL(Job Control Language)是IBM企业级操作系统z/OS上的作业控制语言,用于定义、提交、控制和运行批处理作业。而JCL基础库,就是z/OS中预定义的一些可以直接使用的JCL程序,可以提高我们的工作效率。
IEBGENER(IEB): IEBGENER能够通过拷贝、转换等方式,将数据集从一个位置传输到另一个位置。具体来说,它可以进行以下操作:
示例代码:
//COPYDATA JOB (JOB123),'COPY DATA'
//STEP1 EXEC PGM=IEBGENER
//SYSIN DD *
GENERATE MAXLITERAL
/* This is an example of a simple IEBGENER control statement */
//SYSUT1 DD DSN=INPUT.DATA,DISP=SHR
//SYSUT2 DD DSN=OUTPUT.DATA,DISP=(NEW,CATLG),
// UNIT=SYSDA,SPACE=(CYL,(x,y))
//SYSPRINT DD SYSOUT=*
IEFBR14(IEF): IEFBR14是一种轻量级的JCL程序,通常用于在程序中创建一些虚拟数据集或者空数据集。由于其本身不会涉及到任何实际的数据处理,因此运行速度非常快。示例代码:
//CREATE JOB (JOB123),'CREATE EMPTY DS'
//STEP1 EXEC PGM=IEFBR14
//MYDS DD DSN=EMPTY.DS,DISP=(NEW,CATLG),
// UNIT=SYSALLDA,SPACE=(TRK,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=0)
//SYSOUT DD SYSOUT=*
IEFBR14(IEF): IEFBR14是一种轻量级的JCL程序,通常用于在程序中创建一些虚拟数据集或者空数据集。由于其本身不会涉及到任何实际的数据处理,因此运行速度非常快。示例代码:
//CREATE JOB (JOB123),'CREATE EMPTY DS'
//STEP1 EXEC PGM=IEFBR14
//MYDS DD DSN=EMPTY.DS,DISP=(NEW,CATLG),
// UNIT=SYSALLDA,SPACE=(TRK,(1,1),RLSE),
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=0)
//SYSOUT DD SYSOUT=*
IKJEFT01(IKJ): IKJEFT01常用于向z/OS系统提交多个作业。可以将一堆作业放在一个分区中,在分区外部通过这个命令一次性地提交所有的作业。示例代码:
//SUBMIT JOB (JOB123),'SUBMIT JOBS',
// CLASS=A,MSGCLASS=X
//*FIRST JOB TO BE SUBMITTED
//STEP1 EXEC PGM=SORT
//SYSOUT DD SYSOUT=*
//SORTIN DD DSN=&&TEMP,DISP=(OLD,DELETE,KEEP)
//SORTOUT DD DSN=&&SORT1,DISP=(,PASS),SPACE=(CYL,(10,10),RLSE)
//SYSIN DD *
SORT FIELDS=COPY
/*
//*SECOND JOB TO BE SUBMITTED
//STEP2 EXEC PGM=IEFBR14
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
以上仅为常见的JCL基础库的说明,实际上JCL基础库非常丰富,建议开发者可以仔细查看文档和手册,以了解更多的JCL基础库。