Job文件(英文名称:Job Control Language, JCL)是IBM操作系统(OS)中的一种作业控制语言。IBM操作系统(OS)是运行在IBM公司旗下主机(Mainframe)系统上的一种操作系统,常见的有z/OS、z/VSE、z/VM等。Job通过一系列的指令来控制计算机的运行以完成复杂的计算任务。Job文件在实际运用中的文件格式是类似于文本文件的格式,该格式以顺序排列的卡片为基础,每行卡片都按一定的格式进行书写,并且卡片之间均要以特殊字符(//)分隔,并且编写规范良好的Job文件非常重要。
Job文件按照一定的语法格式进行编写。一个Job文件的基本格式如下:
//JONAME JOB ACCT,'name',CLASS=class,MSGCLASS=msgclass,NOTIFY=user
//STEP1 EXEC PGM=program,PARM=parm
//INPUT DD DSN=dataset1,DISP=SHR
//OUTPUT DD DSN=dataset2,DISP=(NEW,CATLG),UNIT=SYSDA,
// SPACE=(TRK,2),DCB=(RECFm=FB,LRECL=80,BLKSIZE= 800)
//STEP2 EXEC PGM=SENDIT
//INPUT DD DSN=dataset3,DISP=SHR
//OUTPUT DD SYSOUT=*,OUTLIM=1000
//SYSOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN DD *
This is the input for program
/*
Job文件按照上述的规范编写,其中,以“//”开头的行为卡片,卡片的名称一般为大写,并且卡片之间以“//”作为分隔;JOB卡片描述的是作业信息,JOB中的JONAME和STEP1~n是固定格式,其他的可以根据实际需要进行设置;EXEC卡片用来描述要执行的任务,PGM字段描述要调用的程序名称,PARM是传递给程序的参数,STEP必须以JCL语言中的EXEC语句开始;DD卡片是描述输入输出文件的相关信息,DSN描述数据集名称,DISP描述文件如何处理,SYSOUT表示输出到系统输出,OUTLIM表示输出限制长度,DCB描述文件结构等信息。
在实际编写Job文件时,常见的问题如下:
(1)Job文件的语法错误,往往只要出现一个错别字,就会导致作业运行失败。
(2)Job文件的文件名问题,根据实际操作系统的要求进行命名。
(3)Job文件的路径问题,输入Job文件的路径必须是正确的,且至少要保证所在目录有执行权限。
(4)Job文件的头尾问题,Job文件必须以JOB开始,以ENDJOB语句结束。
(5)Job文件中任务顺序问题,Job文件中如果存在任务依赖关系,必须按照依赖关系进行顺序编排。
以上是Job文件常见问题,需要注意以上问题,才能编写出正确、规范、有效的Job文件。