OpenVMS 用户手册
7.12.3 选择编辑程序
按照默认,当您指定 Mail 命令 SEND/EDIT时,Mail 调用基于 DECTPU 的 EVE 编辑程序。输入 Mail 命令 SET EDITOR,可以指定不同的编辑程序代替 EVE。例如,要选择
EDT 编辑程序,发出 Mail 命令 SET EDITOR EDT。该 EDT 编辑程序保持为默认的 Mail 编辑程序 (即使您从系统注销然后再注册),直到输入另一个 SET EDITOR 命令。
要显示选定 Mail 编辑程序的名称,输入 Mail 命令
SHOW EDITOR。7.12.4 使用命令文件编辑邮件
在进入 Mail 之前,可以定义逻辑名 MAIL$EDIT 为一个命令文件。然后,当发出任何要调用编辑程序的 Mail 命令时,将调用这个命令文件执行编辑操作。在这个命令文件中,也可以调用其他公用程序,如拼写检查程序和可以在命令文件中执行的任何功能。关于
MAILEDIT.COM 命令过程的注解例子,可参阅附录 B,而有关命令文件的详情,可参阅第 13 章和第 14 章。7.12.5 取代已选定的编辑程序
如果希望临时取代选定的编辑程序,可以把 MAIL$EDIT 定义为字符串 "CALLABLE_",后面跟随要求的编辑程序名。例如,要使用可调用的 EDT 而不是可调用的
EVE,可以键入以下命令:
$ DEFINE MAIL$EDIT CALLABLE_EDT
|
如果在已调用 MAIL$EDIT 定义的对话期间发出 SET EDITOR
命令,将取代永久选定的编辑程序和当前编辑程序设置。要再次使用 MAIL$EDIT 定义的命令文件,必须退出 Mail
并重新启动它。7.13 使用 Mail 小键盘
在 Mail 中,可以使用键盘的数字小键盘执行命令。多数小键盘键可以执行两个命令。
图 7-2 展示 Mail 小键盘。要输入每个键展示的上部命令,按下适当的键。要输入展示的下部命令,首先按下 PF1 键,然后按下期望的功能键。
图 7-2 Mail 公用程序小键盘
要执行 Mail 命令 SEND,按下 KP7。要执行 Mail
命令 SEND/EDIT,先按下 PF1 键然后按下 KP7。7.13.1 重新定义小键盘键
在 Mail 中,可以重新定义执行 Mail
命令的小键盘键。注意,重新定义一个键时将取代这个键的以前定义。
在 Mail 中
定义小键盘键类似于定义执行 DCL 命令的小键盘键。
在以下例子中,键 KP2 定义为 Mail 命令
PRINT/PARAM=PAGE_ORIENT=LANDSCAPE。在定义了 KP2 之后,可以按下它显示 PRINT/PARAM=PAGE_ORIENT=LANDSCAPE 命令:
MAIL> DEFINE/KEY KP2 "PRINT/PARAM=PAGE_ORIENT=LANDSCAPE"
|
7.13.2 分配附加的键定义
要增加可用于终端上键定义的数目,使用 /STATE
限定词。可以为同一个键分配多个定义,只要每个定义与不同的状态相关。状态名可以是任何字母数字字符串。通过指定状态,可以
第一次按下一个键输入一个命令,而第二次输入一个限定词。
在以下例子中,PF1 (按下两次) 定义为
DIRECTORY/FOLDER:
MAIL> DEFINE/KEY PF1 "DIRECTORY"/SET_STATE=FOLDER /NOTERMINATE
MAIL> DEFINE/KEY PF1 "/FOLDER" /IF_STATE=FOLDER /TERMINATE
|
按下 PF1 两次可输入命令 DIRECTORY/FOLDER。/TERMINATE
限定词结束命令行,因而不必按下 Enter 键。7.13.3 建立永久的键定义
退出 Mail 时,在 Mail 对话期间定义的任何小键盘键将失去定义。要把小键盘键定义从一个 Mail 对话期保留到另一个,在顶级目录中建立一个包含键定义的文件 (例如,MAIL$KEYDEF.INI)。例如,以下
MAIL$KEYDEF.INI 文件包含 6 个键定义:
DEFINE/KEY PF1 "DIRECTORY " /NOTERMINATE /SET_STATE=folder
DEFINE/KEY PF1 "/FOLDER" /TERMINATE /IF_STATE=folder
DEFINE/KEY PF2 "SELECT " /NOTERMINATE /SET_STATE=mail
DEFINE/KEY PF2 "MAIL" /TERMINATE /IF_STATE=mail
DEFINE/KEY PERIOD "READ " /NOTERMINATE /SET_STATE=new
DEFINE/KEY PERIOD "/NEW" /TERMINATE /IF_STATE=new
|
每次调用 Mail 时都要执行这些命令,在注册命令文件 (LOGIN.COM) 中可输入以下命令行:
$ DEFINE MAIL$INIT SYS$LOGIN:MAIL$KEYDEF.INI
|
7.14 Mail 命令概要
本节包含所有 Mail 公用程序命令的概要。有关用于这些命令的限定词的完整信息,请参阅联机求助。
有关使用 MIME 公用程序读取和编写 MIME 编码消息的详情,请参阅 7.15 节。7.14.1 读取消息
使用以下命令读取消息:
- BACK
上次发出命令是 READ
时,显示在当前或上次读取消息之前的消息。上次发出的命令是 DIRECTORY
时,BACK 命令显示前一屏目录列表。 - CURRENT
显示当前读取消息的开始。 - DIRECTORY [folder-name]
显示一列在当前邮件文件中的消息,包括消息编号、发送人名、日期和主题。
- ERASE
清除终端屏幕。 - EXTRACT
把当前消息的一个副本放入指定的输出文件。要把邮件消息复制到一个邮件文件的文件夹,使用 COPY、FILE 或 MOVE 命令。 - FIRST
显示当前文件夹的第一条消息。 - LAST
显示当前文件夹的最后一条消息。 - NEXT
跳至下一条消息,并且显示它。 - READ [folder-name] [message-number]
显示消息。按下 Enter 键与输入不带参数的 READ 命令效果一样。 - SEARCH search-string
搜索当前选定的文件夹,查找包含第一条指定文本串的消息。 - SHOW NEW_MAIL_COUNT
显示未读邮件消息的数目。
7.14.2 交换消息
使用以下命令交换消息:
- ANSWER [filespec]
REPLY [filespec] 发送一条消息给您当前读取或上次读取的消息发送人。 - FORWARD
发送您当前读取 (或刚才读取) 消息的副本给一个或多个用户。 - MAIL [filespec]
SEND [filespec] 发送一条消息给一个或多个用户。
7.14.3 除去消息
使用以下命令除去消息:
- DELETE [message-number]
删除当前读取的消息、某个范围的消息或刚才读取的消息,并把它们移入 WASTEBASKET 文件夹。 - PURGE
删除 WASTEBASKET 文件夹中的所有消息。当您退出 Mail 或输入 SET FILE 命令
(选择新邮件文件) 时,一个隐式清除会倒空 WASTEBASKET 文件夹,除非以前已输入 SET
NOAUTO_PURGE 命令。 - SET [NO]AUTO_PURGE
确定您输入 EXIT 或 SET
FILE 命令时 Mail 是否倒空 WASTEBASKET 文件夹。使用 SET NOAUTO_PURGE 命令时,必须周期性地输入
PURGE 命令删除 WASTEBASKET 文件夹中的消息。 - SHOW AUTO_PURGE
输入 EXIT 或 SET FILE 命令
时,显示 WASTEBASKET 文件夹中的消息是否被删除 (自动清除)。
7.14.4 打印消息
使用以下命令打印消息:
- PRINT
把当前读取消息的一个副本加入打印队列。退出 Mail 时,PRINT 命令建立的文件被释放到打印队列。除非使用 /NOW 或 /PRINT
限定词,否则多个消息将被连接到一个打印作业。 - SET [NO]FORM form-name
SHOW FORM 为 Mail 打印设置默认打印格式。SET NOFORM 命令清除默认打印格式。SHOW FORM 命令显示默认打印格式。 - SET [NO]QUEUE queue-name
SHOW QUEUE 在 Mail 中设置输入 PRINT
命令时要使用的默认打印队列。SET NOQUEUE
清除以前定义的打印队列并设置该队列为
SYS$PRINT,即默认打印队列。SHOW QUEUE 命令显示默认打印队列。
7.14.5 组织消息
使用以下命令组织消息:
- COPY folder-name [filename]
把消息复制到另一个文件夹,并且不把它从当前文件夹删除掉。如果指定的文件夹不存在,就建立一个。 - FILE folder-name [filename]
MOVE folder-name [filename] 把当前消息移入指定的文件夹,并从原始文件夹删除这条消息。 - SELECT [folder-name]
SET FOLDER [folder-name] 建立一组消息,并把它们归为一组。可以把这组消息从一个文件夹复制或移动到另一个文件夹。也可以读取和删除,或搜索和抽取一组消息。另外,可以使用
SELECT 和 SET FOLDER 命令把这组消息从一个文件夹移动到另一个文件夹。 - SET FILE filename
建立 (或打开)
另一个文件作为当前邮件文件。按照默认,邮件文件是
MAIL.MAI。如果使用 COPY 命令、FILE 命令或 MOVE
命令建立其他邮件文件 (例如,JOKES.MAI 或
HISTORY.MAI),然后可以使用 SET FILE 命令打开这些邮件文件。 - SHOW FILE
显示当前打开的邮件文件的名称。 - SHOW FOLDER [folder-name]
显示当前文件夹名。 - SET WASTEBASKET_NAME folder-name
更改包含待删除消息的 WASTEBASKET 文件夹的名称。通过输入 PURGE 命令,可以删除 WASTEBASKET 文件夹中的所有消息。如果设置 AUTO_PURGE,输入 EXIT
命令时,将删除 WASTEBASKET 文件夹中的所有消息。如果设置
AUTO_PURGE,输入 QUIT 命令时可以避免删除 WASTEBASKET 文件夹中的所有消息。 - SHOW WASTEBASKET_NAME
显示
WASTEBASKET 文件夹的名称。 - SHOW DELETED
显示当前邮件文件中被删除消息的空间容量。
7.14.6 标记消息
以下命令用于标记消息:
- MARK [message-number]
标记当前或指定消息。被标记的消息在目录列表的左列显示一个星号 (*)。要选择或组织被标记的消息,使用SELECT
命令及 /MARKED 限定词 。 - UNMARK [message-number]
取消当前或指定消息标记。在目录列表左列上的星号 (*) 被删除。
7.14.7 用户化 Mail 环境
以下命令用于用户化 Mail 环境:
- DEFINE/KEY key-name 字符串
定义执行 Mail 命令的键。可以按下这个键输入一个命令,代替键入这个命令名。 - SHOW KEY [key-name]
显示 DEFINE/KEY 命令建立的键定义。 - EDIT [filename]
调用选定的编辑程序,允许您编辑一条消息然后发送。 - HELP [题目]
显示
Mail 的有关信息。要获得个别命令或题目的信息,输入
HELP 后再输入命令或题目名称。 - SET [NO]CC_PROMPT
设置发送一条消息时是否出现抄送 (CC:) 提示。
- SET COPY_SELF command[,command]
设置 SEND、REPLY 或 FORWARD 命令是否向发送人返回一个正在发送的消息副本。 - SHOW COPY_SELF
显示哪个命令 (SEND、REPLY 或 FORWARD) 自动发送消息副本给您。 - SET [NO]SIGNATURE_FILE
设置 Mail 公用程序当您使用 ANSWER、FORWARD、MAIL、REPLY 或
SEND 命令时自动地把一个签名文本文件附加到邮件消息的末端。 - SHOW SIGNATURE_FILE
显示是否指定一个默认签名文件的信息,如果指定,则显示那个文件的名称。(SHOW ALL 命令也显示签名文件的信息。) - SET EDITOR editor-name
选择编辑消息时使用的文本编辑程序 (例如,使用 Mail
命令 SEND/EDIT)。您可以使用系统可用的任何可调用编辑程序。这个命令取代命令过程 MAIL$EDIT 设置的任何定义。 - SHOW EDITOR
显示已选择的文本编辑程序的名称。 - SET [NO]FORWARD 地址
为您的邮件设置转发地址。 - SHOW FORWARD
显示当前转发地址的名称。 - SET [NO]MAIL_DIRECTORY [.subdirectory-name]
指定把所有邮件文件 (文件类型 .MAI) 从
SYS$LOGIN 目录移入指定的子目录。 - SHOW MAIL_DIRECTORY
显示包含所有
.MAI 文件的设备和目录的名称。 - SET [NO]PERSONAL_NAME "text-string"
把一个文本串附加到您要发送的邮件消息的 From:
字段末端。可以用您的全名或任何其他信息填充这个字段。注意,您的个人名必须从一个字母开始,并且不能有两个连续空格。 - SHOW PERSONAL_NAME
显示用 SET PERSONAL_NAME 命令建立的文本串。 - SHOW ALL
显示当前 Mail 设置的详细信息。
7.14.8 退出或传递控制
以下命令是用于退出 Mail 或传递控制:
- ATTACH [process-name]
准许您在作业中把终端控制从当前进程转换到另一个进程。例如,您正在编辑一个文件时,可以使用
SPAWN 命令进入一个子进程 (Mail) 读取新邮件消息。然后,可以输入 ATTACH 命令退回编辑对话期。 - EXIT
退出 Mail。输入
EXIT 命令时,将删除 WASTEBASKET 文件夹中的任何消息,除非已发出命令 SET NOAUTO_PURGE。通过按下 Ctrl/Z 也可以退出
Mail。 - QUIT
退出 Mail而不倒空 WASTEBASKET 文件夹 (除非输入 EXIT 命令或按下 Ctrl/Z,否则被删除的消息不会被清除)。QUIT 命令执行与 Ctrl/Y 同样的功能。 - SPAWN [command]
建立当前进程的一个子进程。可以使用 SPAWN 命令临时离开 Mail,执行其他功能 (例如,显示目录列表或打印文件),然后返回到 Mail。
7.14.9 邮件文件压缩
以下命令用于压缩邮件文件:
- COMPRESS [filespec]
使得索引邮件文件更小。如果不指定一个文件名,Mail
将压缩当前打开的邮件文件。如果没有打开的邮件文件,Mail
就压缩默认邮件文件 (MAIL.MAI)。
7.14.10 系统管理命令
以下命令用于系统管理:
- REMOVE user name
从系统邮件简要,即数据文件
SYS$SYSTEM:VMSMAIL_PROFILE.DATA 中除去一个用户记录。这需要 SYSPRV 特权。 - SHOW FORWARD
显示用户当前转发地址的名称。 - SHOW PERSONAL_NAME
显示用户用 SET PERSONAL_NAME 命令建立的文本串。
7.15 MIME 公用程序
多用途互连网邮件扩展 (MIME) 是用于把非文本文件附加到邮件消息的标准。MIME 公用程序允许您编写和读取 MIME 编码的邮件消息。使用 MIME,非文本文件
(例如图形或声音文件),被编码并以普通文本发送,虽然这样的文本可能是不可读的。MIME 公用程序把 MIME
文件解码成它们的原始格式,并允许您建立 MIME 编码的文件,可以使用 OpenVMS Mail 公用程序把它作为邮件消息发送。7.15.1 调用 MIME 公用程序
系统管理员可能已经把 MIME 设置为外部命令,但是如果还没有,可以把以下命令行添加到
LOGIN.COM 中:
$ MIME :== $SYS$SYSTEM:MIME.EXE
|
MIME 只打开 MIME 编码的文本文件。您需要首先使用 Mail 把 MIME 编码的消息抽取到一个文本文件。(有关指令,请参阅
7.6.3 节。)
要从 DCL 提示中调用 MIME 公用程序,输入以下命令:
文件名限定词是可选的。如果指定的文件存在,那么它打开为 READ_ONLY。
- /READ_ONLY 指出这个文件是打算解码它的用户接收的消息内容。这是默认值。
- /DRAFT 指出这个文件包含在上一个对话期建立的消息,并且打开为 WRITE_ACCESS。
MIME 公用程序不构成任何标题信息,To: 或 From: 字段。它只建立 MIME 标题和消息的正文文本,保存 Mail 以后发送文件的文本。如果要打开的指定文件包含这样的可识别标题或任何
RFC822 标题,则打开这个文件并且默认是 /READ_ONLY。
如果指定的文件不包含任何可识别的标题或者不存在,将出现一个 OPEN FILE 出错消息。
通过建立两个文件:
MIME$MAILCAP.DAT 和 MIME$FILETYPES.DAT,可以建立显示 MIME
编码消息的系统范围的默认值。
MIME$MAILCAP.DAT 包含一个定义每个本地识别的 MIME 编码文件的内容类型的应用程序。MIME$FILETYPES.DAT
把每个内容类型与一个文件扩展名联系起来。通过在 SYS$LOGIN
中建立这些文件,用户可以取代此默认设置。7.15.2 初始化 MIME 公用程序
用户开始 MIME 公用程序时,初始化进程执行以下步骤:
- 在用户的 VMSmail 简要中,MIME 公用程序查找用户的邮件目录和 MIME 公用程序使用的默认编辑程序。
- MIME 公用程序读取文件 MIME$MAILCAP.DAT 和
MIME$FILETYPES.DAT。
- MIME 公用程序引用下列内部默认设置:
- 内容类型
MIME 公用程序在显示进入消息之前引用内容类型列表。这个列表包含 MIME 公用程序可识别的内容类型和把每个内容类型解码为原始格式所需要的信息。 以下是一个 MAILCAP 条目的例子,它来自 RFC 1524:
通过建立 MIME$MAILCAP.DAT 文件,可以添加内容类型到 MIME 识别列表。(例子 7-1 包含一个 MIME$MAILCAP.DAT 文件的例子。) - 文件扩展名
编写发出消息时,MIME 公用程序引用文件扩展名列表。这个列表包含 OpenVMS
文件扩展名和与每个扩展名关联的内容类型。MIME 公用程序需要把这些扩展名包括它编写的 MIME 格式的消息正文中。 文件扩展名列表的每行包括以下项目:
extension, content type/subtype, (optionally) Content-Transfer-Encoding string
|
以下是文件扩展名列表中一行的例子:
doc, application/ms-word, base64
|
通过建立 MIME$FILETYPES.DAT 文件,可以把文件扩展名和匹配的内容类型添加到 MIME 公用程序识别的列表,这描述在表 7-1
中。
7.15.3 建立可选的 MIME 公用程序文件
表 7-1 列出并描述可以在系统上建立并用户化 MIME 公用程序的文件。
把这些文件放在
SYS$LOGIN
目录中。
|