Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Open VMS FDL(文件定义语言)转换为linux_Linux_Unix_File Descriptor_Openvms - Fatal编程技术网

将Open VMS FDL(文件定义语言)转换为linux

将Open VMS FDL(文件定义语言)转换为linux,linux,unix,file-descriptor,openvms,Linux,Unix,File Descriptor,Openvms,我正在从事一个项目,我们正在从开放虚拟机迁移到Unix/Linux。 在开放虚拟机中有一个称为“FDL”的功能,我想在Unix中实现它 FDL实际做的是,它为文件或记录定义了一组特定的属性,比如为特定文件固定某些块大小,将文件组织为顺序、变量或相对,预先指定文件中的记录大小,为记录指定回车(转义序列)等 如何在unix中创建文件之前设置这些属性。FDL只是一种语法/描述性方法,用于设置/查看OpenVMS文件属性(元数据),在典型的Linux文件系统中没有等效的属性。这些属性是由RMS(Open

我正在从事一个项目,我们正在从开放虚拟机迁移到Unix/Linux。 在开放虚拟机中有一个称为“FDL”的功能,我想在Unix中实现它

FDL实际做的是,它为文件或记录定义了一组特定的属性,比如为特定文件固定某些块大小,将文件组织为顺序、变量或相对,预先指定文件中的记录大小,为记录指定回车(转义序列)等


如何在unix中创建文件之前设置这些属性。

FDL只是一种语法/描述性方法,用于设置/查看OpenVMS文件属性(元数据),在典型的Linux文件系统中没有等效的属性。这些属性是由RMS(OpenVMS记录管理服务)操作的(Files-11/ODS)文件系统实现的,尽管有包(sector7),但Linux中同样没有相应的文件系统

这不仅仅是一个FDL问题,而是一个RMS问题

RMS提供“记录”访问,其中记录是文件中定义的字节块,可以按顺序、按数字或按键(索引文件)读取。问题中提到的属性与简单的顺序访问有关,但是Linux只提供了一个字节流方法。应用程序应该知道读取多少/何时停止读取。可能会使用(记录)终止符(经常使用)(换行符),但仅此而已(fscanf)

除了使用“并行”元文件,或者在文件中保留初始字节流之外,没有标准的方法来存储关于如何在文件中使用ByTestStream的元数据,这使得其他应用程序很难使用这些元数据

所有这一切都表明:没有人能做到。
抱歉。

一般来说,*nix系列操作系统提供了一个能够处理字节流的文件系统。没有与之等价的和,它为记录等高级概念提供支持。或索引。或文件版本。文件放置选项、碎片控制等。您计划实现多少功能?RMS提供远程Decnet访问,OpenVMS文件规范为node::disk:[dir]file.ext;版本,尤其是节点、扩展和版本在Linux下不存在。Linux文件可以是x.y.z,而OpenVMS文件可以是x。或者x.txt或x.dat,但不是x.txt.dat,也不是单独的x。但是如果我的记忆正确的话,它可以是.dat?Richard,文件可以而且经常有一个文件扩展名“.dat”,但在原始ODS-2文件系统实现的文件名部分[a-Z0-9-$\]之外不能有任何其他句点或时髦字符。OpenVMS现在确实允许ODS-5这样做,但在OpenVMS本身上使用转义字符集之类的东西会很棘手。有关更多信息,请尝试初学者“$help set proc/parse_style”。之后-RTFM。