JCL - 环境设置

在Windows/Linux上安装JCL

有许多可用于Windows的免费大型机仿真器,可用于编写和学习示例JCL.

一个这样的模拟器是Hercules,它可以通过以下几个简单的步骤轻松安装在Windows中:

  • 下载和安装Hercules仿真器,可从Hercules的主站点获得: www. hercules-390.eu


  • 可以在URL

Hercules是一个开源软件实现的主机System/370和ESA/390架构,以及最新的64位z/架构. Hercules在Linux,Windows,Solaris,FreeBSD和Mac OS X下运行.

在大型机上运行JCL

用户可以连接到大型机服务器在很多方面,如瘦客户端,虚拟终端,虚拟客户端系统(VCS)或虚拟桌面系统(VDS).

每个有效用户都有一个登录ID进入Z/OS接口(TSO/E或ISPF).在Z/OS接口中,JCL可以编码并作为成员存储在分区数据集(PDS)中.提交JCL时,执行它并按照前一章的作业处理部分的说明接收输出.

JCL的结构

具有通用语句的JCL的基本结构如下:

//SAMPJCL JOB 1,CLASS=6,MSGCLASS=0,NOTIFY=&SYSUID          (1)//*                                                        (2)//STEP010  EXEC PGM=SORT                                   (3) //SORTIN   DD DSN=JCL.SAMPLE.INPUT,DISP=SHR                (4)//SORTOUT  DD DSN=JCL.SAMPLE.OUTPUT,                       (5)//         DISP=(NEW,CATLG,CATLG),DATACLAS=DSIZE50                
//SYSOUT   DD SYSOUT=*                                     (6) //SYSUDUMP DD SYSOUT=C                                     (6) //SYSPRINT DD SYSOUT=*                                     (6) //SYSIN    DD *                                            (6) 
  SORT FIELDS=COPY                                    
  INCLUDE COND=(28,3,CH,EQ,C'XXX')                                    
/*

程序描述

下面解释了编号的JCL语句:

(1)JOB语句  - 指定作业SPOOL所需的信息,例如作业ID,执行优先级,作业完成时通知的用户ID./p>

(2)//*陈述  - 这是一条评论声明.

(3)EXEC声明  - 指定要执行的PROC/程序.在上面的示例中,正在执行SORT程序(即,按特定顺序对输入数据进行排序)

(4)输入DD语句  - 指定要传递给(3)中提到的程序的输入类型.在上面的示例中,物理顺序(PS)文件在共享模式(DISP = SHR)中作为输入传递.

(5)输出DD语句  - 指定程序在执行时要生成的输出类型.在上面的示例中,创建了一个PS文件.如果一个语句超出了第70行的位置,那么它将在下一行继续,该行应以"//"开头,后跟一个或多个空格.

(6)可以有其他类型的DD语句来指定程序的附加信息(在上面的例子中:SORT条件在SYSIN DD语句中指定)并指定错误/执行日志的目的地(示例:SYSUDUMP/SYSPRINT). DD语句可以包含在数据集(大型机文件)中,也可以包含在流数据中(在JCL中硬编码的信息),如上例所示.

(7) /* 标记流数据的结束.

除流数据外的所有JCL语句都以//开头.在JOB,EXEC和DD关键字之前和之后应该至少有一个空格,并且在语句的其余部分不应该有任何空格.

JOB参数类型

每个JCL语句都附带一组参数,以帮助操作系统完成程序执行.参数可以有两种类型:

位置参数

  • 出现在pre - 语句中的定义位置和顺序.示例:会计信息参数只能在 JOB 关键字之后以及程序员名称参数和关键字参数之前出现.如果省略位置参数,则必须用逗号替换.

  • 位置参数存在于JOB和EXEC语句中.在上面的示例中,PGM是在 EXEC 关键字之后编码的位置参数.

关键字参数

  • 它们在位置参数之后编码,但可以按任何顺序出现.如果不需要,可以省略关键字参数.通用语法是KEYWORD = value .示例:MSGCLASS = X,即作业完成后作业日志被重定向到输出SPOOL.

  • 在上面的示例中,CLASS,MSGCLASS和NOTIFY是JOB语句的关键字参数. EXEC语句中也可以有关键字参数.

这些参数已在后续章节中详细说明,并附有相应的示例.