需要一个排序JCL来记下输入文件中的记录,这些记录在第5位写了'7'。
input file:
AABL5ZZZZ
AAQL7AAAA
ZZWA76AAA
AAXC01AAA
输出
AAQL7AAAA
ZZWA76AAA
如果你不想对记录进行排序,你可以使用类似的东西
//*******************************************
//SORT EXEC PGM=SORT
//*******************************************
//SORTIN DD DSN=MY.INPUT.FILE,DISP=SHR
//SORTOUT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=COPY
INCLUDE COND=(5,1,CH,EQ,C'7')
END
/*
要进行排序,只需更改SORT FIELDS=
语句。
PS:上述 JCL 适用于固定记录长度的文件。如果使用可变记录长度,则必须注意两点:
- 将 4 字节长度字段添加到比较位置
- 让 SORT 跳过小于 5 个字节的记录
所以 SYSIN 看起来像
OPTION VLSHRT
SORT FIELDS=COPY
INCLUDE COND=(9,1,CH,EQ,C'7')
END