如何编写 VMS 邮件正文的脚本?
我有一个用于寻址和发送电子邮件的脚本,但我需要消息中的正文而不创建文件,然后使用标准 MAIL 命令行插入文件。
我怎样才能做到这一点?
I have a script that addresses and sends an email but I need a body in the message without creating a file and then inserting the file with the standard MAIL commandline.
How can I do that?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
假设您要创建的正文是可以写入 SYS$OUTPUT 的内容(例如命令过程或 DCL 命令的输出),那么您可以使用 DCL PIPE 将输出通过管道传送到 VMS Mail,例如:
或
PIPE 命令是OpenVMS V7.1 中添加。 如果您使用的是 7.1 之前的系统,那么您唯一的选择就是写入临时文件并进行清理。
编辑:要回答评论,如果您想消除 Mail 命令中的交互式显示,您可以将 SYS$OUTPUT 重定向到 NLA0:,如:
错误消息转到 SYS$ERROR,因此您仍然会看到任何失败。 请参阅 HELP PIPE 了解更多优点。
Assuming the body you want to create is something you can write to SYS$OUTPUT (e.g. the output of a command procedure or DCL command), then you can use DCL PIPE to pipe the output into VMS Mail, like:
or
The PIPE command was added in OpenVMS V7.1. If you are somehow on an pre-7.1 system, then your only choice is writing to a temporary file and cleaning up.
Edit: To answer the comment, if you want to eliminate the interactive displays from the Mail command, you can redirect SYS$OUTPUT to NLA0:, as in:
Error messages go to SYS$ERROR, so you'll still see any failures. See HELP PIPE for more goodness.
让脚本创建一个临时文件来保存消息正文。
邮件将接受命令行上的文本文件,例如用户列表和 /subj
Have the script create a temporary file to hold the body of the message.
Mail will accept a text file on the command line, like the list of users and the /subj