如何编写VMS邮件正文的脚本?

时间:2009-01-13 16:19:51

标签: email vms

我有一个脚本可以处理和发送电子邮件,但我需要在消息中创建一个正文而不创建文件,然后使用标准的MAIL命令行插入文件。

我该怎么做?

2 个答案:

答案 0 :(得分:2)

假设您要创建的主体是可以写入SYS $ OUTPUT的内容(例如命令过程或DCL命令的输出),那么您可以使用DCL PIPE将输出通过管道传输到VMS Mail,如:

$ PIPE write sys$output "The date is ", f$cvtime() | MAIL SYS$INPUT smith/SUBJ="Piping in DCL"

$ PIPE DIR *.LOG | MAIL SYS$INPUT smith/SUBJ="Piping in DCL"

在OpenVMS V7.1中添加了PIPE命令。如果你是在7.1之前的系统上,那么你唯一的选择就是写一个临时文件并进行清理。

编辑:要回答评论,如果要从Mail命令中删除交互式显示,可以将SYS $ OUTPUT重定向到NLA0:,如下所示:

$ PIPE DIR *.LOG |  MAIL SYS$INPUT smith/SUBJ="Piping in DCL" > NLA0:

错误消息转到SYS $ ERROR,因此您仍会看到任何失败。请参阅HELP PIPE以获得更多优惠。

答案 1 :(得分:0)

让脚本创建一个临时文件来保存邮件正文。

Mail将在命令行上接受文本文件,例如用户列表和/ subj