在z/OS中使用JCL启动作业
作者:佚名
上传时间:2023-03-14
运行软件:IBM z/OS
软件版本:不限
版权申诉
z/OS是一种操作系统,JCL(Job Control Language)是一种编程语言,用于定义z/OS作业的运行方式。本文将介绍如何在z/OS中使用JCL启动作业。
z/OS JCL编程
在z/OS中,使用JCL编程可以定义作业的执行过程。JCL程序通常由多个语句组成,每个语句都以“//”开头,以换行符结尾。以下是一个简单的JCL程序示例:
//JOBNAME JOB (ACCOUNT INFO),'JOB DESCRIPTION'
//STEP1 EXEC PGM=PROGRAMNAME,PARM='PARAMETER'
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSIN DD *
COMMAND
/*
JOBNAME
是作业名称,ACCOUNT INFO
是作业所属的帐户信息。STEP1
是作业的一个步骤,PROGRAMNAME
是要执行的程序名称,PARAMETER
是传递给程序的参数。SYSPRINT
、SYSOUT
和SYSUDUMP
是输出数据集的名称,*
表示将输出发送到系统输出设备。SYSTSIN
是输入数据集的名称,COMMAND
是要传递给程序的命令。
z/OS如何启动作业
要在z/OS上启动作业,需要使用JOB或TSU命令。以下是启动作业的示例:
//JOBNAME JOB (ACCOUNT INFO),'JOB DESCRIPTION'
//STEP1 EXEC PGM=PROGRAMNAME,PARM='PARAMETER'
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSTSIN DD *
COMMAND
/*
//
将以上JCL保存为一个文本文件,例如job.jcl
,然后使用以下命令将其提交到z/OS作业队列中:
//SUBMIT JOB (ACCOUNT INFO),'SUBMIT JOB'
// EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=JOB.JCL,DISP=SHR
//SYSUT2 DD SYSOUT=(A,INTRDR)
//SYSIN DD DUMMY
/*
//
SUBMIT
是作业名称,ACCOUNT INFO
是作业所属的帐户信息。IEBGENER
是一个系统程序,用于将文本数据集转换为另一种数据集。SYSUT1
是输入数据集的名称,JOB.JCL
是包含JCL程序的文本文件。SYSUT2
是输出数据集的名称,(A,INTRDR)
表示将输出发送到内部读取器(INTRDR)。SYSIN
是输入数据集的名称,DUMMY
表示没有输入数据。
提交作业后,可以使用以下命令查看作业状态:
$ squeue -j JOBNAME
z/OS JCL教程
以下是一些常用的JCL语句:
//
:语句的开始。JOB
:定义作业。EXEC
:定义作业的一个步骤。DD
:定义数据集。IF
:定义条件。THEN
:条件为真时要执行的语句。ELSE
:条件为假时要执行的语句。ENDIF
:结束条件语句。
以下是一个JCL程序示例,该程序从输入数据集中读取数据,并将其写入输出数据集:
//JOBNAME JOB (ACCOUNT INFO),'JOB DESCRIPTION'
//STEP1 EXEC PGM=IFILE,REGION=0M
//SYSPRINT DD SYSOUT=*
//SYSIN DD DSN=INPUT.DATASET,DISP=SHR
//SYSOUT DD DSN=OUTPUT.DATASET,DISP=(NEW,CATLG,DELETE),
// UNIT=SYSDA,SPACE=(CYL,(50,50),RLSE)
/*
IFILE
是一个程序名称,该程序从输入数据集中读取数据,并将其写入输出数据集。REGION
是定义步骤的存储区域大小(以兆字节为单位)。INPUT.DATASET
是输入数据集的名称。OUTPUT.DATASET
是输出数据集的名称。DISP=(NEW,CATLG,DELETE)
表示将创建一个新的输出数据集,并将其目录条目添加到系统目录,作业结束时将删除它。UNIT=SYSDA
是指定磁盘设备。SPACE=(CYL,(50,50),RLSE)
是定义输出数据集的空间分配,(50,50)
表示分配50个柱面的空间。
示例代码
以下是一个JCL程序示例,该程序在z/OS上运行一个简单的COBOL程序:
//MYJOB JOB (ACCT#),'RUN COBOL PROGRAM'
//STEP1 EXEC PGM=MYPROG
//SYSOUT DD SYSOUT=*
//SYSIN DD *
INPUT DATA
/*
MYJOB
是作业名称,ACCT#
是作业所属的帐户信息。MYPROG
是要执行的COBOL程序名称。SYSOUT
是输出数据集的名称,*
表示将输出发送到系统输出设备。SYSIN
是输入数据集的名称,INPUT DATA
是要传递给程序的数据。
本文介绍了在z/OS中使用JCL启动作业的方法。JCL编程可以定义作业的执行过程,使用JOB或TSU命令启动作业,并使用常用的JCL语句定义数据集和条件。示例代码演示了如何在z/OS上运行COBOL程序。希望这篇文章能够帮助您更好地理解z/OS JCL编程和作业管理。
免责申明:文章和图片全部来源于公开网络,如有侵权,请通知删除 server@dude6.com
用户评论
相关推荐
在z/OS中使用JCL启动作业
z/OS是一种操作系统,JCL(Job Control Language)是一种编程语言,用于定义z/OS作业的运行方式。本文将介绍如何在z/OS中使用JCL启动作业。z/OS JCL编程在z/O
不限
IBM z/OS
2023-03-14 03:13
z/OS中如何使用JCL文件启动作业
本示例代码用于解释如何使用JCL文件启动z/OS中的作业。代码中使用JOB卡片定义了作业名称,以及执行程序路径等信息,通过执行JCL文件来启动作业。//JOB001 JOB (ACCOUNT),PR
z/OS 2.4
z/OS
2023-03-22 19:41
z/OS中如何使用Shell脚本启动JCL作业
本示例代码展示在z/OS中如何使用Shell脚本启动JCL作业,通过设置环境变量和调用JES2服务来实现。#!/bin/sh#--设置环境变量--export JESOWNER=your_use
z/OS V2R2
Shell
2023-05-25 16:53
在z/OS上执行JCL作业
z/OS是IBM的主机操作系统,通常用于处理大型企业级工作负载。本示例将介绍如何在z/OS上执行JCL(Job Control Language)作业,以实现自动化批处理任务。//JOBNAME
z/OS 2.5
z/OS主机操作系统
2023-10-17 09:47
z/OS中如何使用JCL提交作业
JCL是z/OS中用于管理作业的语言,本示例代码展示了如何使用JCL提交作业并检查作业状态。首先使用JOB语句定义作业,然后定义执行步骤,最后使用EXEC语句执行步骤。在每个步骤的最后,可以使用IF语
z/OS 2.4
IBM z/OS
2023-05-25 22:27
在z/OS中执行JCL作业时遇到JCL ERROR 912
JCL ERROR 912表示数据集无法找到或无法访问。这可能是由于数据集名错误、权限问题或存储器问题引起的。要解决此问题,您可以首先检查JCL中数据集的命名是否正确,然后确保您有适当的权限访问该数据
z/OS 2.4
z/OS
2023-11-12 16:15
在z/OS上如何执行JCL作业?
示例代码以下是一个简单的JCL作业执行示例代码://JOBNAME JOB (ACCTINFO),'JOB DESCRIPTION',CLASS=CLASS,MSGCLASS=CLASS//ST
z/OS V2R1及以上
z/OS
2023-03-12 13:26
如何在z/OS系统中使用JCL启动作业?
在z/OS系统中,JCL(作业控制语言)被广泛用于启动作业。下面是一个简单的示例代码,可以用于启动一个作业://JOBNAME JOB (ACCTINFO), 'job-descriptor'//
z/OS任意版本
IBM z/OS操作系统
2023-03-29 12:01
使用z/OS JCL执行批量作业
本示例展示如何使用z/OS JCL编写和执行批量作业,该作业中包含多个作业步骤,并通过参数化来实现其灵活性。https://github.com/IBM/zos-jcl-samples/blob/m
z/OS V2.4
IBM z/OS
2023-03-19 16:36
z/OS如何使用JCL提交作业
JCL(Job Control Language)是z/OS系统提交作业的主要语言。本示例将演示如何使用JCL提交一个简单的作业。//MYJOB JOB 1234,PROGRAMMER//ST
z/OS 2.4
z/OS
2023-04-19 03:16