0

我一直在搜索 Google 以及 OpenVMS 系统管理员指南和用户指南,但仍然找不到任何关于列出 OpenVMS 卷上存在的目录的信息。我看不出这在文档中是如何被认为是理所当然的,因为其他一切都是非常具体的,所以要么我看不到它,要么它无法完成。如果它不能完成,那么关于使用 VMS,我会遗漏一些非常大的图片。任何建议表示赞赏。

TIA, grobe0ba

4

3 回答 3

3

通过“列出”,我假设您的意思是通过诸如 Dir 之类的命令...要查看卷上的所有目录,我会执行类似的操作,

$ dir volumeid:[000000...]*.dir

当然,您需要足够的权限才能查看卷上的所有目录。

于 2014-04-07T05:17:42.377 回答
0

不幸的是,我没有评论所需的声誉,所以我必须重新制定答案。

@ChrisB

一般来说,投票时的这个答案是不正确的。目录总是以 .DIR 结尾且版本为 1 的文件。将目录重命名为 *.DIR;x 且 x>1 将使目录无法遍历。然而,DIR 文件保留其目录特征并将其重命名回 ;1 将返回其正常行为。

所以可以在 DIR 命令中添加一个 ;1

$ dir volumeid:[000000...]*.dir;1

但这又是无效的,因为任何人都可以创建不是目录的 *.DIR 文件(例如 EDIT TEST.DIR),并且那里有应用程序这样做。

@海因

所以海因的第二个答案,此时确实有 0 票,是正确的答案。在没有第三方工具的情况下完全执行请求的操作是:

$ PIPE DIR /TOTAL volume:[*...] | SEARCH SYS$PIPE "ory "

此命令将仅显示有效目录

于 2014-08-02T06:46:10.660 回答
0

要快速浏览所有目录,您还可以查看“目录”的 /TOTAL 选项。

$ DIRE /总计 [*...]

添加 /SIZE 以获得效果(和减速)

您当然可以将过程发布到您的心中...

$ pipe dir /total data:[*...] | perl -ne "print if /^Dir/"
Directory DATA:[CDC]
Directory DATA:[CDC.ALPHA]
Directory DATA:[CDC.ALPHA.V8_3]
$ pipe dir /total data:[*...] | searc sys$pipe "ory "
Directory DATA:[CDC]
Directory DATA:[CDC.ALPHA]
Directory DATA:[CDC.ALPHA.V8_3]
$ pipe dir /total data:[*...] | perl -ne "chomp; $x=$1 if /^Di.* (\S+)/; printf qq(%-60s%-19s\n),$x,$_ if /Tot/"
    DATA:[CDC]                                                  Total of 7 files.
    DATA:[CDC.ALPHA]                                            Total of 1 file.
    DATA:[CDC.ALPHA.V8_3]                                       Total of 11 files.

最后,如果您认真对待 OpenVMS 上的文件和目录,请务必在 Google 上搜索 DFU OPENVMS ...下载并享受。

于 2014-04-07T14:06:41.873 回答