Sorting 如何使用jcl比较多个文件

Sorting 如何使用jcl比较多个文件,sorting,cobol,mainframe,jcl,syncsort,Sorting,Cobol,Mainframe,Jcl,Syncsort,我有一个要求,在我收到6个文件从上游应用到一个GDG。我想比较一下所有6个版本,看看是否有任何重复,也就是说,两个或多个文件可能是重复的(上游错误地发送了两次或多次)。 请您帮助提供使用JCL或Cobol的解决方案好吗?如果它们是结构正确的数据集(不是文件),那么它们应该有头记录。您所需要做的就是比较每个数据集的第一条记录。您可以使用您的分拣产品或批量使用ISRSUPC JCL不能这样做,因为JCL只告诉操作系统完成任务需要哪些程序和资源。因此,即使是COBOL解决方案也需要JCL 最后,我相信

我有一个要求,在我收到6个文件从上游应用到一个GDG。我想比较一下所有6个版本,看看是否有任何重复,也就是说,两个或多个文件可能是重复的(上游错误地发送了两次或多次)。
请您帮助提供使用JCL或Cobol的解决方案好吗?

如果它们是结构正确的数据集(不是文件),那么它们应该有头记录。您所需要做的就是比较每个数据集的第一条记录。您可以使用您的分拣产品或批量使用ISRSUPC

JCL不能这样做,因为JCL只告诉操作系统完成任务需要哪些程序和资源。因此,即使是COBOL解决方案也需要JCL


最后,我相信你说的是没有版本的世代。版本与GxxxxV之后的编号有关。

最好使用ISPF比较工具(ISPF 3.13-SuperC或3.13-SuperCE)比较文件,但选择后台执行而不是前台执行。这将创建一个批处理作业,您可以将其用作作业中要包含的步骤的模板:

//SUPERC  EXEC PGM=ISRSUPC,PARM=(DELTAL,LINECMP,' SEQ','') 

//NEWDD   DD DISP=SHR,DSN=new.dataset 
//OLDDD   DD DISP=SHR,DSN=old.dataset   
//OUTDD   DD SYSOUT=* 
请记住,ISPF比较仅比较2个文件;要比较6,你需要15个步骤(我想)


如果您的站点有PDSMAN,那么您可以使用其PDSM37模块为每个数据集生成一个校验和,并使用一个小的REXX轻松比较6个校验和

z/OS中并没有任何东西说明每个文件都需要一个唯一的头记录。@Steve Ives:我并没有这样说或暗示。好的,对不起。你能解释一下“他们应该有头记录”是什么意思吗?为什么比较每个文件的第一条记录是确定两个数据集是否相同的一种方法?你不能使用ISRSUPC只比较第一条记录,即使可以,它也不会告诉你文件是否相同。第一个记录可能相同,但其余文件可能不同。如果您不能使用SUPERC,但可以使用DFSort(joinkeys),并且如果标题在那里并且它们相同,则表明这两个数据集包含相同的数据。当然,这取决于标题记录中包含的数据,例如日期和时间以及运行顺序。