📜  JCL-环境设置

📅  最后修改于: 2020-11-22 17:00:49             🧑  作者: Mango


在Windows / Linux上安装JCL

有许多可用于Windows的免费大型机模拟器,可用于编写和学习示例JCL。

其中一种仿真器是Hercules,可以通过以下几个简单的步骤将其轻松安装在Windows中:

  • 下载并安装Hercules模拟器,该模拟器可从Hercules的主页-: www.hercules-390.eu上获得。

  • 可以在URL www.jaymoseley.com/hercules/installmvs/instmvs2.htm上找到有关编写和执行JCL的各种命令的完整指南。

除了最新的64位z / Architecture之外,Hercules是大型机System / 370和ESA / 390架构的开源软件实现。 Hercules在Linux,Windows,Solaris,FreeBSD和Mac OS X下运行。

在大型机上运行JCL

用户可以通过多种方式连接到大型机服务器,例如瘦客户端,虚拟终端,虚拟客户端系统(VCS)或虚拟桌面系统(VDS)。

为每个有效用户提供一个登录ID,以进入Z / OS界面(TSO / E或ISPF)。在Z / OS界面中,可以对JCL进行编码并将其作为成员存储在分区数据集(PDS)中。提交JCL后,将按照上一章的“作业处理”部分中的说明执行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')                                    
/*                                                         (7)  

节目说明

编号的JCL语句已在下面说明:

(1)JOB语句-指定对作业进行任务存储所需的信息,例如作业ID,执行优先级,在作业完成时要通知的用户ID。

(2)// *语句-这是一个注释语句。

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

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

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

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

(7) / *标记流数据的结尾。

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

JOB参数类型

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

位置参数

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

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

关键字参数

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

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

这些参数以及相应的示例已在后续章节中进行了详细介绍。