1)JCL语句全部由大写字母构成,每行72列
2)JCL语句由5个区域构成,分别是标志区,命名区,操作区,参数区,注释区
3)标志区就是//,标志区后紧跟命名区
4)命名区,操作区,参数区,注释区间隔至少一个空格
5)参数区无内容,不能出现注释区
以下总结的7大常用JCL模板,小写部分代表可以客户化的部分。
1,删除1个数据集
//jobnameJOB NOTIFY=&SYSUID
//stepnameEXEC PGM=IEFBR14
//SYSPRINT DD SYSOUT=*
//ddnameDDDSN=dsname,DISP=(OLD,DELETE,DELETE)
//
删除数据集名为dsname的数据集
2,删除VSAM数据集
//jobnameJOB NOTIFY=&SYSUID
//stepnameEXEC PGM=IDCAMS
//SYSPRINTDD SYSOUT=*
//SYSINDD *
DELETE ‘entryname1’
DELETE ‘entryname2,entryname3,entryname4’
//
删除VSAM数据集entryname1,entryname2,entryname3,entryname4。
删除多个VSAM数据集,请用逗号隔开
3,创建一个数据集
//jobnameJOB NOTIFY=&SYSUID
//stepnameEXEC PGM=IERBR14
//ddnameDDDSN=dsname,DISP=(NEW,CATLG),
//UNIT=SYSALLDA,SPACE=(TRK,1)
//
UNIT=SYSALLDA 指定系统选择一个最合适的设备存放数据集
4,数据集上带库
//jobnameJOB
//stepnameEXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSINDD DUMMY
//SYSUT1DD DSN=dsname,DISP=SHR
//SYSUT2DD DSN=dsname,DISP=(NEW,CATLG),
//UNIT=tapedevice,VOL=SER=volser
//
5,拷贝一个顺序数据集
//jobnameJOB NOTIFY=&SYSUID
//stepnameEXEC PGM=IEBGENER
//SYSPRINTDD SYSOUT=*
//SYSINDD DUMMY
//SYSUT1DD DSN=dsname,DISP=SHR
//SYSUT2DD DSN=dsname,DISP=OLD
//
6,拷贝一个分区数据集
//jobnameJOB
//stepnameEXEC PGM=IEBCOPY
//SYSPRINTDD SYSOUT=*
//sysut1DD DSN=dsname,DISP=SHR
//sysut2DD DSN=dsname,DISP=(NEW,CATLG),
//SPACE=(CYL,(1,1,45)),
//DCB=(RECFM=FB,LRECL=80,BLKSIZE=800),
//UNIT=unit,VOL=SER=volser
//SYSINDD *
COPYINDD= sysut1,OUTDD= sysut2
/*
7,拷贝分区数据集成员到另一个分区数据集
//jobnameJOB NOTIFY=&SYSUID
//stepname EXECPGM=IEBCOPY
/*JOBPARMSYSAFF=*,LINES=99
//SYSPRINTDD SYSOUT=*
//sysut1DD DSN=dsname,DISP=SHR
//sysut2DD DSN=dsname,DISP=SHR
//UNIT=uint,VOL=SER=vol
//SYSINDD *
COPYMOD INDD=sysut1,OUTDD=sysut2,
SELECTM=(membername)
/*