【发布时间】:2016-01-20 02:47:58
【问题描述】:
我想将程序的输出保存到变量中。
我使用以下方法,但失败了。
$ PIPE RUN TEST | DEFINE/JOB VALUE @SYS$PIPE
$ x = f$logical("VALUE")
我收到一个错误:%DCL-W-MAXPARM, too many parameters - reenter command with fewer parameters
\WORLD\
参考: How to assign the output of a program to a variable in a DCL com script on VMS?
【问题讨论】:
-
我猜该程序的输出不仅仅是一个单一的标记,即类似于“Hello world.”的东西。您需要引用该值以使其成为逻辑名称。不确定确切的语法,但可能是
DEFINE/JOB VALUE "''@SYS$PIPE'"的一些变化。 -
"''@SYS$PIPE'"将不起作用:单引号仅用于 DCL 符号。SYS$PIPE是逻辑,@是输入重定向。