JCL开发及常见命令

发布时间:2024年01月21日

? ? ? 这玩意比LINUX命令行难多了,IBM的设计体系还是比较完善的,毕竟国际商用机器,就是那么牛。

? 一 JCL简介

? ? ? JCL就是把一个个PGM,以数据流的形式串起来跑。作业流(JOB STREAM),作业是用JCL(JOB CONTROL LANGUAGE)。作业中有三个基本的语句,分别是:JOB,EXEC,DD

? ? ? ?JOB:标识一个作业的开始,提供必要的运行参数(这玩意大概率一个JCL就一个)

? ? ? ?EXEC:和作业STEP有关,基本上每个STEP代表一个PGM,定义要执行的程序嘛

? ? ? ?DD:JCL的目的是跑数据流,增增改改,就是写一些输入输出的数据文件

? ? ? ?

//COPYDATA JOB (),'ERIC',
// TIME=1440,
// NOTIFY=&SYSUID,
// REGION=0M,
// CLASS=A,
// MSGCLASS=X,
// MSGLEVEL=(1,1)

//* 这个地方加了个注释区
//* COPY DATASET
//CPYLOAD EXEC PGM=IEBCOPY,PARM='SIZE=1M'
//SYSPRINT DD SYSOUT=*
//IN1 DD DISP=SHR,DSN=DEVP124.JCL
//OUT1 DD DISP=SHR,DSN=DEVP124.SRC
//SYSIN DD *
COPY I=IN1,O=OUT1
S MEMBER=((JCLSMP1,,R))
/*

? ? ?这个代码的含义是,把“JCLSMP1”从一个分区数据集拷贝到另一个分区数据集,这玩意就相当于那个C命令。拷贝一个没有权限复制的文件,它的提示就是,DECOPY FAIL

? ? ?看完数据流图后写JCL,一般都是找一个即存的JCL,S它的详细信息之后,3.2新建一个,或者说直接C一个即存的JCL文件。,一般JCL的必须是定长(RECFM=FB),且LRECL=80字节。

二? JCL的LOG怎么看

? ? 如果自己的JCL头指明自己的大机号,就只能SD;LOG,看动态更新的LOG,这得想明白JCL的头主要干什么,主要就是控制输出LOG的形态? ?

? ? 调试JCL,主要看LOG,首先就是看是ERROR,ABEND,还是COND CODE=0000。ABEND最为难搞,这个码非常的多,最简单就是SB37,就是说自己卷的空间不足。

? ? JCL的LOG,分为JESMSGLG,JESJCL,JESYSMSG,这三个区域:

? ? JESMSGLG:主要存放各部的返回值和统计信息,JESJCL里面存放用户提交的JCL语句,JESYSMSG里面存放的JES运行JCL时发生的详细信息,按照我的经验。出现ERROR搜NOT,搜MESSAGE;ABENDEND,难搞一点。

三? JCL操作中的常用命令

? ?1.主要讲讲和创建数据集文件有关的3.2命令

? ?里头有种类似于目录的创建方式,可以在里面添加JCL文件

? ? 另外一种方式是只能放测试数据或者就是类似于JCL文件

? ? PS:顺序数据集,DIRECTORY BLOCKS=0,这个里头没有MEMBER

? ? PDS: 分区数据集,就是上头哪个不等于0? ? ?这个里面才会有成员

? ? 数据集名字的长度区分也是1到8位

? ? ?对数据集:E\V\D\,R重命名,I,查看信息,CO拷贝,Z压缩(有时候JCL保存不了,会报SB37)

? ? ? 对成员,操作差不多,PDS(MEMBER),里面有成员,

? ? 2.杂七杂八的命令

? ? ? ?START 3.2: 跳到3.2界面里面

? ? ? ?F9: 切换屏幕 ,NUM数字+F9(这个意思是说,定位切换到哪个屏幕里面)

? ? ? ?REF,RES:刷新文件夹,和刷新文件里的内容

? ? ? ?SUB:提交,这玩意很有特点,要么进JCL里SUB,要么直接在填选项哪个地方

? ? ?3. 行命令

? ? ? ?I:插入一行,I+NUM,就是若干行

? ? ? ?D:删除若干行,D+NUM,就是删除若干行

? ? ? ?DD~~DD:删除代码块

? ? ? ?R:重复一行,R+NUM,删除若干行

? ??

? ? ? ?

? ? ? ?

文章来源:https://blog.csdn.net/CNMBZY/article/details/135592071
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。