![]() |
1
8
撇开驻留在Unix文件系统中的大型机文件不谈(z/OS是Unix的一种风格,而且已经有好几年了),大型机文件没有扩展名或后缀。 大型机文件名(称为数据集名称或DSN)的格式为HLQ[.Q1[.Q2[.Qn]]],其中HLQ是高级限定符,Q1…Qn是后续的限定符,与HLQ分开,并通过句号彼此分隔。整个DSN不能超过44个字符。每个限定符必须由字母、数字和IBM所称的“国家”字符组成,这些字符(在美国无论如何)是@、#和$。此外,限定符不能以数字字符开头。在我看来,最好避免这种情况的例外。 正如布鲁斯·马丁在评论中指出的那样,大型机具有生成数据组(GDG)的概念,GDG的最低级别限定符采用操作系统生成的GnnnnVnn格式,其中G和V之间的四位数字是“生成号”,V后面的两位数字是“版本号”。生成号由操作系统递增每次创建文件的新实例时。 所以你可能在考虑一个GDG。请注意,GDG最低级别限定符不依赖于日期或时间,它只指示创建数据集实例的顺序。 gdg通常不是通过绝对生成数访问的,而是通过相对生成数访问的。如果ABC.DEF是一个GDG,并且有四个现存的生成ABC.DEF.g008v00、ABC.DEF.g009v00、ABC.DEF.g001v00、ABC.DEF.g001v00,那么对ABC.DEF(0)的引用将是ABC.DEF.g001v00的简写。对ABC.DEF(-1)的引用是ABC.DEF.g010v00的简写。引用相对生成(0)始终是对最近创建的GDG实例的引用。 大型机数据集也可以是PDS(分区数据集)。分区数据集有“成员”,在概念上与(尽管实现了 非常 不同于)PC或Unix文件系统上的目录。PDS可以包含许多相关的成员,例如实用程序控制语句,其中需要将它们作为一个组进行管理。 PDS名称遵循与普通DSN相同的规则,成员名称遵循与普通DSN限定符相同的规则,但是引用成员需要在括号中指定它。如果MY.DATA是一个PDS,并且我希望访问一个名为XYZ的成员,那么我将指定MY.DATA(XYZ)。 请注意,数据集的格式不一定在其名称中指明。数据集,例如,包含固定100字节记录的PDS,作为元数据记录在文件系统中。 |
|
2
1
上面@cschneid的回复很好。要添加到其中:
琐事:在我工作过的地方,系统程序员和操作人员经常把那些gnnnvnn称为“goovoo”数字,而b/c则常常被编号为G00nnV00。。:-) |
![]() |
SaggingRufus · 是否需要在我的JCL中指定所有文件? 7 年前 |
|
JOHN · 如何解决CICS中的PROG753错误? 8 年前 |
![]() |
MC Emperor · 如何处理作为CALL语句参数的文字? 8 年前 |
![]() |
Lena · 将字母转换为包含数字的字符串中的数字 8 年前 |
![]() |
Sridhar · 用于cobol显示和解包数字字段的Java映射 9 年前 |
![]() |
raz_user · 由尾随空格分隔的Cobol字符串 9 年前 |
![]() |
Benjer · 有没有一种方法可以用现代Cobol写评论?[副本] 9 年前 |
![]() |
user3401335 · 用cobol计算变量的长度字符串 10 年前 |