如何在 HP openVMS DCL 中启用区分大小写?

How to enable case sensitive in HP openVMS DCL?

我的 DCL 如下(TEST.EXE 只是打印输入)

$ DEFINE DCL$PATH SYS$DISK:[],SYS$LOGIN:,SYS$SYSTEM:
$ PIPE TEST.EXE abc | DEFINE/JOB RET_VALUE @SYS$PIPE
$ x = f$logical("RET_VALUE")
$ WRITE SYS$OUTPUT x

我想让这个DCL显示结果是"abc"。 但是这个DCL结果会显示"ABC".

我尝试在 DCL 中添加 "SET PROCESS/CASE_LOOKUP=SENSITIVE",但行不通。

有人有什么建议或提示吗?非常感谢。

您是否检查过 中接受的答案是否有助于解决这个问题?

您在管道中的 DEFINE 命令是 DEFINE/JOB RET_VALUE abc,DCL 将其更改为 DEFINE/JOB RET_VALUE ABC。当引用等价名称时,DCL 不会更改为大写,这将是 DEFINE/JOB RET_VALUE "abc"。但是,当您编写 "@SYS$PIPE" 时,您将字符串 @SYS$PIPE 作为等效名称。换句话说,在一个字符串中,重定向器 @ 不再起作用。因此,您必须按原样从 SYS$PIPE 获取字符串,例如使用 READ,如链接答案中所示。

PS: ...您可能希望在管道命令中从 test.exe 中删除 .exe