我有一个我正在运行的测试脚本,它生成了一些错误,如下所示,我希望出现这些错误。但是,有没有什么办法可以阻止它们在屏幕上显示呢?我使用
$ write sys$output以显示是否存在预期的错误。
我试着用
$ DEFINE SYS$ERROR ERROR.LOG但是这改变了我的整个错误输出日志,如果这是正确的处理方式,我可以在我的脚本末尾取消设置吗?
错误示例
%DCL-E-OPENIN, error opening TEST$DISK:[AAA]NOTTHERE.TXT; as input
-RMS-E-FNF, file not found
%DCL-E-OPENIN, error opening TEST$DISK:[AAA]NOTTHERE.TXT; as input
-RMS-E-FNF, file not found
%DCL-W-UNDFIL, file has not been opened by DCL - check logical name发布于 2013-02-14 00:51:51
若要隐藏脚本中的错误消息,请执行以下操作。尝试此命令
$ DEFINE/USER SYS$ERROR NL:NL:是空设备,因此您的终端上不会显示任何错误消息。
祝好运
发布于 2013-02-14 04:07:40
DEFINE/USER创建一个逻辑名称,该名称在下一个映像退出时消失。所以如果你只是在命令之前使用它来保护命令,那就没问题了。否则,我更喜欢用SET MESSAGE来控制输出。
当然,您可能想要获取$STATUS,并在命令执行后验证它是否成功或出现预期错误,并报告任何意外错误。
更好的是...如果您预计会出现某些错误条件,为什么不测试它们呢?例如:
$ file = F$SEARCH("TEST$DISK:[AAA]NOTTHERE.TXT")
$ IF file.NES."" THEN TYPE 'file'干杯,海因
https://stackoverflow.com/questions/14857868
复制相似问题