📜  JCL教程(1)

📅  最后修改于: 2023-12-03 15:32:06.173000             🧑  作者: Mango

JCL教程

JCL(Job Control Language)是IBM主机和大型机上使用的作业控制语言。它用于描述一个计算任务,包括输入、输出和处理步骤。学习JCL对于程序员来说非常重要,因为它是大型机上执行作业的必要工具。

JCL的基本结构

一般来说,JCL由以下几部分组成:

  1. //JOB 开始标记
  2. JOB卡:描述作业名和作业处理类型
  3. 执行语句:包含INPUT、OUTPUT或SYSIN等语句
  4. EXEC卡:指定作业执行的程序或程序集
  5. DD卡:指定作业需要的数据集

JCL通常采用批处理方式执行,即事先提出一批任务指令,以便预先完成,然后再交由计算机执行。

编写JCL

下面是一个简单的JCL示例:

//EXAMPLE JOB 1,NOTIFY=&USER
//STEP1 EXEC PGM=IEFBR14
//DD1 DD DSN=EXAMPLE.INPUT,DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
 SORT FIELDS=COPY
/*

注释采用“//”符号来表示。以下是对此JCL示例的解释:

  • JOB卡:(//EXAMPLE JOB 1,NOTIFY=&USER)描述了作业名称和作业号;
  • EXEC卡:(//STEP1 EXEC PGM=IEFBR14)指定作业执行的程序或命令;
  • DD卡:(//DD1 DD DSN=EXAMPLE.INPUT,DISP=SHR)指定输入数据集和输出数据集的位置;
  • // : ('//SYSPRINT DD SYSOUT=*') 指定要打印在JOBLOG中的SYSPRINT;
  • SYSIN : ('//SYSIN DD *') 指定一个数据集作为程序输入。
JCL的语法规则
  • 所有JCL语句必须以两个斜线(//)作为行首;
  • 每个JOB中必须至少有一个STEP;
  • 每个STEP必须有一个执行卡;
  • DD卡必须用于描述作业所需的所有数据集;
  • JOB卡需位于JCL语句中的起始位置;
  • 执行语句、EXEC卡和DD卡必须位于JOB卡之后。
总结

以上是JCL的基础知识,包括基本的JCL结构、编写规则和语法规则等。编写JCL需要程序员融合业务积累了解业务需求,领会标准架构,理解JCL提供的强大的调度及相关服务的方式。