JCL笔记

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一. JCL的基本概念

1. JCL的定义

➢Job Control Language 的缩写。JCL用户与操作系统的接口,用户通过JCL 语句按照自己的意图来控制作业的执行

2. 作业(JOB)的概念

➢把大型机完成的每项任务,称为一个作业(或一个JOB)

3. 作业步(JOB STEP)的概念

➢执行一个作业所要经历的步骤

➢同一个JOB内,作业步JOB STEP不能超过255个

➢每个作业步的标志语句是EXEC语句

4. JCL的功能

➢控制系统权限

➢管理系统资源和数据集

➢对COBOL程序的编译和执行

cobol源代码>>>JCL编译>>>cobol机器码(可执行码)

>>>JCL执行

5. JCL的重要性

➢编译作业流和执行作业流都用JCL编写

➢维护、管理大型机资源的基础语言

二. JCL的语法规则

1.JCL允许使用的字符

➢字母字符:A – Z

➢数字字符:0 – 9

➢通配字符:@、#、$

➢特殊字符:, . ‘’/ ( ) * & + - = 空格

, 分割不同参数

空格分割不同区域标识区【空格】名字区【空格】操作区【空格】....

& 1.调用符号参数的值 2.定义临时数据集

➢EBCDIC可打印字符集(EBCDIC码) (两个十六进制数表示一个字符)2. JCL语句的区域划分

➢标识区

✓告知系统所包含的语句类型,用来区分语言种类

✓每条语句以“//”作为开始

➢名字区

✓必须从第3列开始编写

✓最多8个字符,可用字母、数字、通配符(@、#、$) 组合

✓首字符不能是数字,必须是字母或通配符(@、#、$)

➢操作区(操作符区)

✓表示语句的类型。如:操作符是EXEC,则该条语句就被界定为EXEC

语句

➢参数区(运算区)

✓几乎每一个操作符都需要有参数配合使用,才能完成语句的效力

✓可包含多个参数,参数之间用“,”分隔

➢备注区(注释区、说明区)

✓写注释用,不参与语句的执行(此区不建议使用)

2. JCL语句的区域划分(举例说明)

标识区名字区操作区参数区备注区

//XYZ JOB(SMD),‘DEVXMG’,MSGLEVEL=(1,1) XXXXXXXXXXX HI JCL 高亮JCL保留字命令HI JCL OFF

3. JCL的参数类型

位置参数(Positional Parameter)

关键字参数(Keyword Parameter)

列示参数(List of Sub-parameter)

符号参数(Symbolic Parameter)

3. 1位置参数Positional Parameter

➢定义:用它的位置描述其特性的一种参数

➢特点:

✓如果一个操作符(如JOB,DD等)可以含有多种参数,则位置参

数必须位于其他参数之前

✓如果一个操作符可以含有多个位置参数,则位置参数之间不允许调

换前后顺序

位置参数的子参数

➢位置参数可以包含多个子参数

➢每个子参数也有固定位置,顺序不可调换

➢若前边或中间的子参数缺省,则需用“,”留位置

➢若后边的子参数全部缺省,则不需用“,”留位置

如果括号里只有一个参数那么括号也可以省略

3. 2关键字参数Keyword Parameter

➢定义:简称键字参数,以关键字来描述其特性

➢特点:

✓关键字参数一定带“=”号,带“=”号的未必是关键字参数比如:“PGM=”和“PROC=”是EXEC语句的位置参数

(PGM:JCL中,程序,是经过编译之后的机器码

PROC:过程,用JCL语言编写的一段代码,过程内必须由一至多个作业步组成,过程只能被作业调用,不能直接执行)

又如:符号参数也带“=”号,也不属于关键字参数

✓关键字参数之间可以互换顺序

3. 3列示参数,List of Sub-parameter

➢定义:是关键字参数的一种延伸。(关键字参数的一种)

所有含有子参数的关键字参数可以统称为列示参数

➢特点:有位置子参数和关键字子参数两种表现形式

✓以“位置子参数”的形式表现

例:DISP=(NEW,KEEP,DELETE)

(注意:和位置参数的子参数作区别)

其中的NEW KEEP DELETE具有位置参数的特性,不得调换顺序

✓以“关键字子参数”的形式表现

例:DCB=(RECFM=FB,LRECL=80,DSORG=PS)

其中的RECFM、LRECL、DSORG 具有关键字参数特性,可以换顺序

注意:

•括号的用法:若一个参数含有多个子参数,则必须用括号进行包含,

除非只写一个子参数。如:DISP=NEW 或DCB=LRECL=80

•子参数最多有2级,即括号最多2层。

3. 4符号参数Symbolic Parameter

➢定义:与“变量”概念类似,并非系统指定的,而是程序员自定义

➢符号参数的三种定义和赋值的方式:

✓SET语句,权限最大,可在过程或JOB里定义符号参数并赋值

✓PROC语句,只在过程里定义符号参数(并赋值) (可以不赋值)

✓EXEC语句,在调用过程时,对符号参数赋值

➢调用符号参数:在参数之前加一个“&”号,即为调用符号参数

➢利用过程中定义的符号参数,可以向本过程传递不同的参数值

4. JCL的续行规范和方式

➢JOB、EXEC、DD、PROC等语句续行几率最大

➢续行时,在一个完整的参数后紧接着“,”(必须在第71列<含>之前)

➢下一行的第1列、第2列仍然必须为“//”

➢欲延续的参数必须在第4列至第16列之间开始

例:

//FILE1 DD DSN=USERID.ABC,DISP=(NEW,CATLG,DELETE),

// DCB=(RECFM=FB,LRECL=80,DSORG=PS)

D在必须4-16列之间

相关文档
最新文档