大型主机操作系统ppt课件

上传人:钟*** 文档编号:1551064 上传时间:2019-10-25 格式:PPT 页数:54 大小:1.87MB
返回 下载 相关 举报
大型主机操作系统ppt课件_第1页
第1页 / 共54页
大型主机操作系统ppt课件_第2页
第2页 / 共54页
大型主机操作系统ppt课件_第3页
第3页 / 共54页
点击查看更多>>
资源描述
第五章 过程与实用程序,1,过程,和其它高级语言一样,作业控制语言中也允许定义过程。过程是一段预先编写好的JCL语句的集合,它可以被反复调用。 作业控制语言中定义了两种过程,分别是编目过程(cataloged procedure)和流内过程(in-stream procedure)。,2,过程编目过程,在指定的过程库中编目的过程称为编目过程。该过程库可以是分区数据集或扩展分区数据集,通常系统过程被编目在系统过程库中,用户过程被编目在用户库中。由于调用编目过程时,系统提供的是该过程的拷贝,因此一个编目过程可以同时被几个作业调用。,3,过程流内过程,流内过程是放置在作业输入流中的过程。在一个作业中最多可以有15个流内过程,但不能嵌套使用,也不能被其他作业调用,4,过程流内过程与编目过程,流内过程与编目过程的区别是流内过程随着一个作业放在输入流中,它紧跟在JOB语句后面而不是作为分区数据集的成员 在实际应用时,流内过程只用于测试阶段,一旦流内过程调试成功,即可对其进行编目,使其成为编目过程,5,过程过程的编写,一个过程可由几个作业步组成。在过程中可以包含除下列语句外的所有JCL语句: 调用过程的EXEC语句(一个过程不能调用另一个过程) JOB语句、/*语句或/语句 JOBLIB DD语句或JOBCAT DD语句 任何的JES控制语句 DD *语句或DD DATA语句 流内过程的开始和结束分别用PROC语句和PEND语句表示,对于编目过程,不能有PEND语句,而如果没有分配给符号参数默认值,PROC语句是可选的,6,过程过程的结构,/过程名 PROC 符号参数 /过程步1 EXEC /dd名1 DD /过程步2 EXEC /dd名2 DD / PEND (仅在流内过程中使用) 过程结构中的过程名、过程步名及dd名的书写规则与JCL中其它语句名的书写规则一样。符号参数的功能类似于其它编程语言子程序中的形式参数,7,过程流内过程的实例,8,过程过程的调用,过程的调用有如下两种方式: /作业步名 EXEC PROC=过程名符号参数 /作业步名 EXEC 过程名符号参数,9,过程过程的调用规则,当调用一个过程时,系统会以输入流、用户库、系统库的顺序来检索所要调用的过程。如果所调用的过程是流内过程,则必须把流内过程放在调用它的EXEC语句之前。 如果调用的编目过程被编目在用户库中,系统从JCLLIB语句确定的用户库中进行检索。因此,若调用的过程是用户库中的过程时,要用JCLLIB语句来指明过程所在的用户库。如果调用的编目过程被编目在系统库中,系统从JES2中的PROCLIB参数指定的系统库进行检索。,10,过程过程的修改(1),由于不同用户的要求不同,所以当某一个作业调用标准过程时,系统应允许用户对过程进行修改,以满足自己的需要。过程修改的方式有如下三种: 置换过程中的符号参数; 对过程中的EXEC及DD语句参数进行覆盖和增加; 增加新的DD语句。,11,过程过程的修改(2),符号参数由符号“&”和参数名组成,参数名可以是以字母或通配符开头的18位字母数字或通配符,关键字参数和关键字子参数不能作为符号参数的参数名。符号参数为修改过程提供了可选用的方法。 当过程中含有符号参数时,每一个符号参数必须指定一个值或赋空值,该值被称为符号参数的初值,12,过程过程的修改(3),用EXEC语句调用过程时,该语句的所有关键字参数都会影响过程的执行,它将覆盖过程中定义的参数,对于过程中没有定义的参数,系统会把它加到过程中去。用EXEC语句修改过程的方式如下: /stepname EXEC 过程名,参数.过程步=值 其中“参数.过程步=值”表示准备对过程中所希望的过程步的关键字参数进行修改,13,过程过程的修改(4),例如有下述过程: /RUN PROC /STEP1 EXEC PGM=P1 /STEP2 EXEC PGM=P2 /STEP3 EXEC PGM=P3,TIME=(2,30) 若要求对STEP2增加COND参数并指定条件测试为(8,GT),对STEP3改变其时间限制为4秒。那么调用该过程时,EXEC语句为: /GO EXEC RUN, / COND.STEP2=(8,GT), / TIME.STEP3=4,14,过程过程的修改(5),对于过程中DD语句参数的修改可以通过下列方式: /过程步名.DD名 DD “过程步名.DD名”用来确定要修改的DD语句,其中“DD名”指需要修改的DD句,“过程步名”指过程重要修改的DD语句所在的过程步的名字 例: /RUN PROC /S1 EXEC /SYSUT2 DD SYSOUT=* / PEND /TEST2 EXEC RUN, /S1.SYSUT2 DD SYSOUT=S,15,过程过程的修改(6),对于调用的过程,可能不包含用户需要的DD语句,这是可通过下列方法来增加新的DD语句: /过程步名.需增加的DD语句 其中过程步名是确定新加的DD语句在过程中的位置,16,实用程序,在z/OS系统中,IBM提供了种类繁多且十分有用的实用程序,来辅助用户对数据进行组织与维护。 实用程序分为三类: 系统实用程序、数据集实用程序和独立实用程序。,17,实用程序系统实用程序,系统实用程序通常以IEH打头,它的主要功能是维护和管理系统、用户数据集合、整个盘卷。系统实用程序及其功能如下: IEHNITT:为磁带卷写标号。 IEHLIST:系统控制数据信息列表。 IEHMOVE:移动或拷贝若干组数据、移动或拷贝整个卷、移动或拷贝编目目录等。 IEHPROGM:建立及维护系统控制数据、建立世代数据组索引、重命名带卷、删除数据集等。 IEHDASDR:初始化一个直接存取卷。,18,实用程序数据集实用程序,数据集实用程序通常以IEB打头。它的主要功能是对数据集或数据集纪录行组织、修改或比较。它可以作为单个作业来执行,也可以作为某个程序的子程序被调用。需要注意的是这些数据维护实用程序不能用于VSAM数据集。以下是数据集实用程序及其功能: IEBCOMPR:比较顺序数据集、分区数据集或扩展分区数据集。IEBCOPY:拷贝、压缩或合并分区数据集及扩展分区数据集。IEBDG:创建含有模型数据的测试数据集。 IEBEDIT:有选择的拷贝作业步及其相关的作业语句。 IEBGENER:拷贝顺序数据集记录或将顺序数据集转换为分区数据集。 IEBIMAGE:修改、打印或连接模块。 IEBISAM:卸载、装载、拷贝或打印ISAM数据集。 IEBPTPCH:打印或穿卡输出一个数据集。 IEBUPDATE:对顺序、分区数据集或扩展分区数据集进行合并修改,19,实用程序独立实用程序,独立实用程序通常以IBC开头。它是一种特殊的实用程序,可独立于操作系统运行,通常被存放在磁带上。当系统出现重大故障而又无法恢复时,利用系统转储磁带,恢复系统盘卷。如: IBCDASDI:用于初始化和分配一个直接存取卷上的可用道的实用程序。 IBCDUMPRS:是转储或再存储直接存取卷数据的实用程序。,20,实用程序实用程序的调用,实用程序的调用方法有两种,一种是在ISPF下用TSO的CALL命令调用,另种是通过JCL语句调用 JCL调用的一般格式为以下两种: (1): /UTLFM JOB /STEP EXEC PGM=utility 调用公用程序 /SYSPRINT DD 系统输出数据集(SYSOUT) /SYSUT1 DD 输入数据集 /SYSUT2 DD 输出数据集 /SYSIN DD 定义实用程序使用的控制数据 (2): /UTLFM JOB /STEP EXEC PGM=utility 调用实用程序 /SYSPRINT DD 系统输出数据集(SYSOUT) /ddname DD UNIT=,VOL=,DISP=OLD 存取所需数据集的有关信息 /ddname DD UNIT=,VOL=,DISP=OLD 所存储数据集的有关信息 /SYSIN DD 定义实用程序使用的控制数据,21,实用程序控制语句的标准格式,标号用于表示控制语句,除实用程序IEHNITT外,其它实用程序都可以省略标号。标号必须放在控制语句开始的位置,后面留有一个以上的空格。标号是由18个字母或数字字符组成。 操作符用于标示控制语句的类型,其后至少跟有一个空格。操作数是由一个或多个关键字参数组成,参数之间以逗号相隔。操作数后至少跟一个空格。控制语句内可加注释,但它与操作数之间至少要有一个空格。 当控制语句有续行时,可在本行有逗号的地方断开,或在本行第72列处设置一个字符,或在下一行的16列开始。,22,常用实用程序简介IEBCOMPR,IEBCOMPR程序用于在两个数据集的逻辑记录间进行比较,这两个数据集可以是顺序数据集、分区数据集或扩展分区数据集。它能对数据集或数据集成员的定长、变长、组块、非组块或未定义记录进行比较。但它不能对加载模块进行比较 两个顺序数据集比较相同,是指它们含有相同数量的记录且相关记录和关键字完全相同。而两个分区数据集或两个扩展分区数据集比较相同,则是指: 相关成员含有相同的记录; 注释列表在相关成员的位置相同; 相关记录和关键字完全相同; 相关目录和用户数据区完全相同,23,IEBCOMPR分区数据集的比较,对于分区数据集和扩展分区数据集,只有其中一个数据集的所有目录项名字在另一个数据集的目录中都能找到相同的目录项名时,才能进行比较。否则是不能比较的,24,IEBCOMPRJCL语句列表,语句 功能 JOB 作业开始 EXEC 定义程序名PGM=IEBCOMPR SYSPRINT DD 指定系统输出数据集 SYSUT1 DD 定义需要比较的数据集 SYSUT2 DD 定义需要比较的数据集 SYSIN DD 定义控制数据集或DUMMY,控制语句可以是COMPARE、EXITS、LABELS,25,IEBCOMPR控制语句说明(1),COMPARE:定义数据集的组织结构,在SYSIN DD中设置控制语句时,它必须是第一个控制语句,当输入数据集是分区数据集或扩展分区数据集时,必须设置这个语句。语句格式如下: label COMPARE TYPROG=PS/PO 其中TYPROG=PS/PO用于指定输入数据集的组织结构,PS表示输入数据集为顺序数据集,为缺省值;PO表示输入数据集是分区数据集或扩展分区数据 EXITS:定义用户所用的出口例程。当用户调用出口例程时,需要用该语句。当设置多个EXITS时,IEBCOMPR将只用最后一个。EXITS的语句格式为: label EXITS INHDR=例程名 ,INTLR=例程名 ,ERROR=例程名 ,PRECOMP=例程名,26,IEBCOMPR控制语句说明(2),LABELS:指定是否将用户标号作为数据来处理,当设置多个LABELS语句时,IEBCOMPR程序只用最后一个,LABELS语句的格式为: label LABELS DATA=YES | NO | ALL| ONLY 其中DATA= YES | NO | ALL| ONLY指明是否将用户标号作为数据处理。DATA的取值如下: YES:所有用户标号都作为数据处理,并依照返回码,将标号作为数据终止来处理,该值为缺省值。 NO:仅将用户标号作为数据处理。 ALL:所有用户标号作为数据处理,16种返回码将使IEBCOMPR程序完成剩余用户标号组的处理并终止作业步。 ONLY:只用用户头标作为数据处理,处理时不管是否有返回码,27,IEBCOMPR例1,/DISKDISK JOB /STEP1 EXEC PGM=IEBCOMPR /SYSPRINT DD SYSOUT=A /SYSUT1 DD DSN=PDSSET1,UNIT=disk,DISP=SHR, / DCB=(RECFM=FB,LRECL=80,BLKSIZE=2000), / VOLUME=SER=111112 /SYSUT2 DD DSN=PDSSET2,UNIT=disk,DISP=SHR, / DCB=(RECFM=FB,LRECL=80,BLKSIZE=2000) /SYSIN DD * COMPARE TYPROG=PO /*,28,IEBCOMPR例2,/TAPETAPE JOB . / EXEC PGM=IEBCOMPR /SYSPRINT DD SYSOUT=A /SYSUT1 DD DSNAME=SET1,LABEL=(2,SUL),DISP=(OLD,KEEP), / VOL=SER=001234,DCB=(DEN=2,RECFM=FB,LRECL=80, / BLKSIZE=2000,TRTCH=C),UNIT=tape /SYSUT2 DD DSNAME=SET2,LABEL=(,SUL),DISP=(OLD,KEEP), / VOL=SER=001235,DCB=(DEN=2,RECFM=FB,LRECL=80, / BLKSIZE=2000,TRTCH=C),UNIT=tape /SYSIN DD * COMPARE TYPORG=PS LABELS DATA=ONLY /*,29,常用实用程序简介IEBCOPY,IEBCOPY程序用于拷贝或合并多个分区数据集或扩展分区数据集,其作用有: 拷贝完整的数据集或部分数据集; 建立分区数据集或扩展分区数据集的备份,备份是存放在磁带或磁盘上的顺序数据集; 变更分区数据集或扩展分区数据集的成员、为选择的成员更换新名; 对加载模块进行拷贝和重新组块。,30,IEBCOPYJCL语句列表,语句 说明 JOB 作业初始 EXEC 定义程序名PGM=IEBCOPY SYSPRINT DD 定义由IEBCOPY产生的系统输出信息 SYSUT1 DD 定义输入的分区数据集或扩展分区数据集 SYSUT2 DD 定义输出的分区数据集或扩展分区数据集 SYSUT3 DD 定义一个一处数据集,该语句在没有足够的虚拟空间存放输入的分区数据集或扩展分区数据集目录入口时使用 SYSUT4 DD 定义一个一处数据集,该语句在没有足够的虚拟空间存放输出的分区数据集或扩展分区数据集目录入口时使用 SYSIN DD 定义控制语句,可在这里定义的语句有:COPY、ALTERMOD、COPYMOD、SELECT、EXECLUDE,31,IEBCOPY控制语句说明(1),COPY:启动一个或多个拷贝、写在或加载操作。其格式为; label COPY OUTDD=ddname ,INDD=(ddname| (ddname,R),) ,LIST=YES|NO “OUTDD=ddname”:指定输出的分区数据集名,这里的ddname必须是本作业步中的一个DD语句名。 “INDD=(ddname| (ddname,R),)”:指定输入分区数据集或扩展分区数据集,对于卸载操作只能指定一个ddname,这里的R表示从输入的数据集中选择所有的成员进行相应的操作,此时不需设置SELECT语句。 “LIST=YES|NO”:指出是否将拷贝的成员名列在SYSPRINT数据集中,取值为YES时将成员名列表。,32,IEBCOPY控制语句说明(2),如果为拷贝操作,输入数据集和输出数据集必须是分区数据集、扩展分区数据集或卸载模块结果的顺序数据集; 如果是加载操作,输入数据集必须是分区数据集或顺序数据集,而输出数据集则必须是分区数据集; 如果是卸载操作,输入数据集必须是分区数据集、扩展分区数据集或顺序分区数据集,输出数据集可以驻留在直接存取卷上,也可以驻留在磁带卷上。当驻留在磁带卷上时,它的组织结构必须是顺序数据集,且要指定省略目录或SPACE参数。,33,IEBCOPY控制语句说明(3),ALTERMOD:指明加载模块变更的开始,其格式为: label ALTERMOD OUTDD=ddname,LIST=YES|NO “OUTDD=ddname”:指定要变更的数据集; “LIST=YES|NO”:指明是否将变更成员名列在SYSPRINT数据集中,取值为YES时,被变更的所有成员名列在SYSPRINT数据集中 SELECT:确定输入数据集中要拷贝的成员名,其格式为: label SELECT MEMBER=(name1|(name1,newname1,R)| (name1, ,R)|,(name2,newname2,R)|(name2,R),) “MEMBER=”:name确定拷贝的成员名;newname确定拷贝输出的成员名,如果这个名字在输出分区数据集中已存在,则这个成员不被拷贝,除非同时设置R参数,newname和ALTERMOD不能同时使用。 EXCLUDE:确定输入数据集中不被拷贝和不加载的成员,其格式为: label EXCLUDE MEMBER=(name1,name2,),34,IEBCOPY控制语句说明(4),COPYMOD:指明对拷贝和加载模块从新组块的操作,其格式为: label COPYMOD OUTDD=ddname ,INDD=(ddname| (ddname,R),) ,MAXBLK=nnnn|nnK ,MINBLK=nnnn|nnk ,LIST=YES|NO “OUTDD=ddname”:指定加载模块要拷贝到的分区数据集; “INDD=(ddname| (ddname,R),)”:指定输入数据集名,该数据集是一个加载模块库,并在本作业的一个名为ddname的DD语句中定义,这里的R表示从输入的数据集中选择所有的成员进行拷贝,并变更输出加载模块库中任何指定的成员名,此时不需设置SELECT语句; “MAXBLK=nnnn|nnK”:指定输出分区数据集记录的最大块值,通常设置的值要小于缺省值,以便数据记录能和其它系统或程序兼容,nnnn是一个十进制数,nnK则表示nn千字节,其缺省值是输出数据集的块大小; “MINBLK=nnnn|nnk”:指定输出分区数据集记录的最小块值,缺省值为1K; “LIST=YES|NO”:指明是否将变更成员名列在SYSPRINT数据集中,取值为YES时,被变更的所有成员名列在SYSPRINT数据集中。,35,IEBCOPY例1,/COPY JOB /JOBSTEP EXEC PGM=IEBCOPY /SYSPRINT SYSOUT=A /SYSUT1 DD DSN=DATASET5,UNIT=disk, / VOL=SER=111113, DISP=SHR /SYSUT2 DD DSN=DATASET4,UNIT=disk, / VOL=SER=111112,DISP=(NEW,KEEP), / SPACE=(TRK,(5,1,2),36,IEBCOPY例2,/COPY JOB /JOBSTEP EXEC PGM=IEBCOPY /SYSPRINT DD SYSOUT=* /OUT1 DD DSN=DATESET1,UNIT=disk,VOL=SER=111112, / DISP=(OLD,KEEP) /IN6 DD DSN=DATASET6,UNIT=disk,VOL=SER=111115, / DISP=OLD /IN5 DD DSN=DATASET5,UNIT=disk,VOL=SER=111116, / DISP=(OLD,KEEP) /SYSUT3 DD UNIT=SYSDA,SPACE=(TRK,(1) /SYSUT4 DD UNIT=SYSDA,SPACE=(TRK,(1) /SYSIN DD * COPYOPER COPY OUTDD=OUT1 INDD=IN5,IN6 SELECT MEMBER=(B,R),A) /*,37,IEBCOPY例3,/UNLOAD JOB /EXEC PGM=IEBCOPY /SYSPRINT DD SYSOUT=A /SYSUT1 DD DSN=inpds,DISP=SHR /SYSUT2 DD DSN=tape.dataset.name, / UNIT=TAPE,VOL=SER=tape#, / LABEL=#,DISP=(NEW,PASS) /SYSIN DD DUMMY /*,38,常用实用程序简介IEBGENER,建立顺序数据集、分区数据集或扩展分区数据集成员的备份。这个拷贝可以是磁带到磁带、磁盘到磁盘或磁盘到磁带。注意:如果需要将备份数据集放在原数据集所在的卷,它们两者不能同名。 从顺序数据集产生分区数据集或扩展分区数据集。通过实用程序控制语句,将顺序数据集逻辑化分为若干个记录组并为其分配成员名,之后IEBGENER程序把这些新建的成员放到指定的分区数据集或扩展分区数据集中。注意:对于含有跨区记录的数据集不能产生分区数据集或扩展分区数据集。 为分区数据集添加新成员。IEBGENER程序将输入的顺序数据作为一个成员加到指定的分区数据集或扩展分区数据集中。 产生一个编辑的顺序数据集、分区数据集或扩展分区数据集。通过使用实用程序控制语句,指定一个或一组记录或整个数据集的编辑信息。 处理含有双字节字符数据集。用IEBGENER可以拷贝、编辑、重新组块或打印含有双字节字符(DBCS)的数据,也可以将含有DBCS数据的顺序数据集转换成为分区数据集。 打印顺序数据集、分区数据集或扩展分区数据集的成员。 对数据集的逻辑记录进行重新组块或改变其长度。 为顺序输出数据集拷贝用户标号。 为用户例程提供编辑设施及出口,该例程用于处理标号、受控输入数据及永久性输入输出错误。,39,IEBGENERJCL语句列表,语句 说明 JOB 作业初始 EXEC 指定程序名PGM=IEBGENER SYSPRINT DD 指定系统输出数据集 SYSUT1 DD 定义输入数据集 SYSUT2 DD 定义输出数据集 SYSIN DD 定义控制数据集,控制语句可以是GENERATE、EXITS、LABELS、MEMBER、RECORD,40,IEBGENER控制语句说明,GENERATE:指明成员名和别名数、记录标识符、文字及控制数据集中的编辑信息 EXITS:指明用户出口例程 LABELS:特指用户标号处理 MEMBER:指定新建分区数据集或扩展分区数据集的成员名或成员别名 RECORD:定义将处理的记录组并提供编辑信息,41,IEBGENER例1,/PRINT JOB /STEP1 EXEC PGM=IEBGENER /SYSPRINT DD SYSOUT=A /SYSIN DD DUMMY /SYSUT1 DD DSN=INPUT,UNIT=3380,DISP=SHR, / DCB=(RECFM=F,LRECL=80,BLKSIZE=80), / VOL=SER=111112 /SYSUT2 DD SYSOUT=A, / DCB=(RECFM=F,LRECL=80,BLKSIZE=80),42,常用实用程序简介IEBPTPCH,IEBPTPCH可以用来打印输出部分或整个顺序或分区数据集 打印记录的格式可以采用标准格式也可以由用户指定 IEBPTPCH可以用来打印: 整个顺序数据集或分区数据集(或扩展分区数据集); 一个分区数据集(或扩展分区数据集)的部分成员; 一个顺序数据集或分区数据集(或扩展分区数据集)的部分记录; 一个分区数据集(或扩展分区数据集)的目录; 打印一个顺序数据集或或分区数据集(或扩展分区数据集)的修改版(Edited version)。,43,IEBPTPCHJCL语句列表,语句 说明 JOB 作业初始 EXEC 定义程序名PGM=IEBPTPCH SYSUT1 DD 定义输入的数据集 SYSUT2 DD 定义输出的数据集,如果定义 为SYSOUT=A,则为打印输出,44,IEBPTPCH控制语句说明,PRINT:表示输入数据集将被打印。如果要进行打印操作,它必须是第一条操作语句。 MEMBER:说明一个分区数据集中需要打印的成员。 RECORD:说明用户设定的打印格式。 TITLE:指定一个标题。该标题将被打印在所有数据之前。每个打印作业可以包含两个TITLE语句,第一个TITLE语句指定标题,而第二个TITLE语句指定子标题,45,IEBPTPCH的标准输出格式,46,IEBPTPCH用户自定义格式的例子,一个自定义格式的例子,仅给出了控制语句部份,47,IEBPTPCH用户自定义格式的例子的输出结果,48,常用实用程序简介IEHLIST,IEHLIST程序用于系统信息列表,其中包括分区数据集目录列表、VTOC列表以及编目列表等,49,IEHLISTJCL语句,ddnameDD语句用于给定要操作的数据集的详细信息 SYSIN DD * 语句后面是所需的控制语句 一般的控制语句为: LISTCTLG LISTVTOC LISTPDS,50,IEBLISTLISTPDS和LISTVTOC的格式,51,IEBLIST例1,/LIST EXEC PGM=IEHLIST /SYSPRINT DD SYSOUT=* /D1 DD UNIT=SYSDA,VOL=SER=PACK11,DISP=OLD /D2 DD UNIT=SYSDA,VOL=SER=PACK12,DISP=OLD /D3 DD UNIT=SYSDA,VOL=SER=PACK17,DISP=OLD /SYSIN DD * LISTCTLG VOL=SYSDA=PACK12 LISTVTOC VOL=SYSDA=PACK11,DSN=(USER.F1) LISTPDS VOL=SYSDA=PACK17,DSN=U1.LIB /*,52,常用实用程序简介IEFBR14,IEFBR14是一个不含控制语句的实用程序,它可以用来创建或删除磁盘数据集。 例:数据集的删除 /DELETE JOB / EXEC PGM=IEFBR14 /DD1 DD DSN=data.set.name,DISP=(OLD,DELETE) /* 需要注意的是,如果要删除的数据集已编目,用户 不能再指定UNIT或者VOL=SER参数。如果用户指 定了以上参数,那么数据集虽然同样被删除,但不 能被反编目,53,常用实用程序简介DFSORT,DFSORT程序用于数据排序,下面是它的应用实例: /STEP1 EXEC PGM=DFSORT /SYSIN DD * SORT FIELDS=(1,10,CH,A) /SORTIN DD DSN=TEST.LOG,DISP=OLD /SORTOUT DD DSN=SORT.LOG,DISP=(NEW,PASS), / UNIT=SYSDA,SPACE=(CYL,1) /SORTWK1 DD UNIT=SYSDA, SPACE=(CYL,1) STEP1语句用于调用DFSORT程序; SYSIN DD语句定义控制数据集,其中控制语句SORT FIELDS=(1,10,CH,A)指出要排序的内容始于输入数据的第一个位置,以递增顺序对前10字符进行排序; SORTIN DD语句给出用于排序的输入数据集名和状态; SYSOUT DD语句为排序的输出结果指定数据集; SORTWK1 DD语句为排序操作分配工作空间,54,
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!