发信人: snowypeng()
整理人: snowypeng(2001-08-11 13:53:17), 站内信件
|
在Unix专有术语中,-s叫做“选择”或“转换”,根据Unix规定,所
有的选择必须在命令的开始,以此保证在-s 后说明地址。比如, 如此录
入便会出错:
mail [email protected] -s ‘Meeting for next week’
mail会认为你想把一条信息送到三个不同的地方: harly@fuzzball
.ucsb.edu,-s和“Meeting for next week”,于是所有的部分都会出错。
另一捷径是你可以事先准备好信件并存入文件,然后你可以通知mail
直接从文件中读取信件。实施步骤:在命令最后打入“<”(小于号), 再
打入文件名称。比如:假定你在文件(名为memo)中存有一封信件,并想以
“Meeting next week”为标题,把此信件送到 harley@fuzzball. ucsb
.edu,录入:
mail -s ‘Meeting next week’ [email protected] 1 [email protected] Wed Mar 31 23:49 35/1204 “Re: seeing
a movie”
U 2 kim@fuzzball Thu Apr ? 06:42 138/5518 “ Re : having
dinner”
U 3 [email protected] Thu Apr ? 06:50 46/1592 “
Students Guide To Unix”
U 4 [email protected] Thu Apr ? 08:22 48/1595 “ Something
interesting about TLN”
U 5 [email protected] Thu Apr ? 08: 23 343/16810 “
Schedule for Chapter 5”
摘要中的每一行代表一条待读信件。如果一个信头概述很长, 在你屏
幕上所显示出来的就会分成几行。如上所示,信件均被编号。在上例中我
们共有五条信件。
在编号之后, 你看到的是发送信件的用户标识。 如 1 号信件由
addie@nippercom送出。紧随其后的是发送日期和时间。 在此之后又是
两个被“/”(分隔号slash)隔开的数字。这能告诉你信件的长短,两个数
字分别为行数及字数。在上例中,1号信件包括了35行共1,204字。 最后
是信件的标题。
在信头摘要显示完毕后,你会看到“&”(表示and的符号)的独行显示
&
这是一种提示符(prompt),表示mail在等你录入命令。你就可以逐个
地录入命令对邮件进行读取和处理。输完之后,录入q(quit)停止程序。
在出现“&”提示符之后,你有许多命令可以录入,表6-2和6-3 是这
些命令的简介;表6-2是以字母顺序列出的所有重要命令;6-3 是以功能列
出上述命令。
缩写全称功能
?-显示命令概况
!-执行单个shell(命令处理器)命令
+-显示下一封信件
--显示前一封信件
RETURN-显示下一封信件
number-显示信件编号
ddelete删除信件
dp-删除当前信件,显示下一封信件
eedit对信件进行文本编辑
hheaders显示信头概述
llist列出可用命令名单
mmail将新信件送到指定的用户标识
nnext显示下一信件
pprint显示(打印)信件
prepreserve把信件保存于系统邮箱
qquit终止邮件
rreply回复发送方及所有接收方
RReply只回复发送方
ssave将信件存入指定的文件中
shshell暂停mail,启动新的命令处理器(shell)
totop显示信件头几行
uundelete保留事先删除信件
wwrite与s相同,只是不存信头
xexit终止mail,一切改变无效
z-显示下一组信头概要
z--显示上一组信头概要
注意:在某些系统中,r与R用途相反
表6-2mail重要命令一览(以缩写字母为序)
缩写全称功能
停止mail
qquit终止mail
xexit终止mail,且一切改变无效
HELP
?-显示命令概要
llist显示命令名单信头
shheaders显示信头概要
z-显示下一组信头概要
zˉ-显示上一组信头概要
显示信件
+-显示下一封信件
--显示上一封信件
RETURN-显示下一封信件
number-显示信件编号
nnext显示下一封信件
pprint显示(打印)信件
totop 显示信件头几行
回复及邮寄
mmail编写一封新信件
rreply回复发送方及所有接收方
RReply仅回复发送方
处理信件
ddelete 删除信件
dp-删除当前信件,显示下一封信件
eedit对信件文本编辑
prepreserve将信件存入系统邮箱
ssave将信件存入指定的文件中
uundelete恢复先前删除信件
wwrite与s相同,不存信头
Shell指令
!-执行单个shell命令
shshell暂停邮寄,启动一新的shell命令
注意:有的系统中,r与R功效相反
表6-3mail 重要命令一览(以功能排列为序)
当前信件及信件清单
过一会儿我们将讨论最重要的mail命令。 这里有几个你在读取及处
理信件
时会用到的命令。讨论之前,我们先弄清“信件清单“的涵义。
再看一下前面列出的信头概述
Mail version 2.18 5/19/83. Type ? for help.
“/usr/spool/mail/harley”:5 messeges 5 unread
>U1 [email protected] Wed Mar 31 23:49 35/1204“Re:seeing a
movie ”
U2 kim@fuzzball Thu Apr ?06:42 138/5518 “Re:having dinner”
U3 [email protected] Thu Apr ?06:50 46/1592 “
Students Guide to Unix”
U4 [email protected] Thu Apr ? 08:22 48/1595 “ Something
interesting about TLN”
U5 [email protected] Thu Apr ? 08: 23 343/16810 “
Schedule for Chapter 5”
注意1号信件的最左端有一个“>”(大于号),表示当前信件。如果你
录入命令时未清楚地指定某封信件,则当前信息就是缺省的。
比如,正象我们待会儿看到的,d命令删除信件。命令:
d 3-5
会删除3#-5#的信件。若你没有指定信件的标号, 此命令将对当前信
件起作用。如,你录入:
d
它将会删除当前信件(在上例中当前信件是1号)。
当你要读取信件时,当前信件从1号信件开始,一个一个读下去, 当
前信件也会变成为上一封信件。因此,无论在何时, 任何未清楚的指定
信件的命令都会作用于上一封你读取的信件。
有时,尽管你会指定某封信件号,对于大多数命令而言, 你可以使
用一个或多个号码,比方刚才提到的第二个例子中,我们说明我们想删除
3号-5号信件。 你所指定信件的方法就是使用信件清单。
“信件清单”中可以包括一个或更多的数字式,即一组数字或字符,
具有特殊意义的数字或字符。表6-4列出你能指定信件清单的不同途径。
大多数情形下,你使用的命令只指定一个号码或是完全不用信件清单。
然而, 说明信件清单的方法很容易,你应该熟悉并且会使用。
表6-5列出使用d命令的一些信件清单例子。
规定含义
当前信件
n信件号码n
n-m包括从n至m的所有信件
^第一封信件
$上一封信件
*所有信件
userid所有来自指定用户标识的信件
/pattern所有包括标题形式的信件
:n所有新信件
:o所有老信件
:r所有被读取的信件
:u所有尚未被读取的信件
表6-4指定信件清单的不同途径
命令含义
d删除当前信件
d 删除当前信件
d 3删除3号信件
d 3-5删除3至5号信件
d ^删除第一封信件
d $删除上一封信件
d *删除所有信件
d harley删除从用户标识harley来的所有信件
d /hello删除标题中带有“hello”的信件
d :n删除所有新信件
d :o删除所有旧信件
d :r删除所有已读取信件
d :u删除所有未被读取信件
表6-5指定信件清单举例
在一张信件清单中,:r指那些已被读过的信件;:u则指尚未被读过的信
件。你又如何能知道哪个是读过的,哪个是未读过的呢?
再回头看一下本节开头的信头概要, 请注意在每一个信头行左端都
有一个“U”,表示信件尚待读取,你读过信件后“U”便会自动消失。
信件显示
mail程序的设计有利于信件逐封显示。其步骤如下:开始读取时,
当前信件定在1号,要读取第一封信件,只需按“RETURN”(回车键) ; 要
读取下一封信件, 就再按一次“RETURN ”。 换言之, 你一次一次按“
RETURN”就可以逐个读出信件。
如果你想直接跳到某封指定的信件,可以使用P(print)命令。 比如你
想读取4号信件,录入
p 4
为了方便起见,如果你只录入号码,mail会认为你想要信件显示出来。
因此,更容易的方法就是
4
除此之外,你可以录入“+”(加号)显示下一封信件或“-”(减号)来
显示前一封信件。
若是信件太长而不适于屏幕一次显示完,mail 会启用一个卷页程序
来为你显示信件。卷页程序一次显示一个屏幕,并在屏幕的底部有提示:
还有未完内容。使用哪一种卷页程序取决于你使用的系统如何设置。三种
最常用的卷页程序是more、pg和less。
在使用more或less时,你按空格键卷动屏幕;用pg时,你须按RETURN
键。存储及删除信件
你读完一封信件后要对其进行处理,有两种选择:删除或存储信件于
文件中。删除信件用“d”命令;存储信件用“s”命令。若录入命令时无
信件清单,则它实施于当前信件上,即刚已读过的那一封信件。
比如,你刚读取一封信件,要删除它:
d
当然你可将信件清单和d命令一起录入,如删除2号和从5号到7号的信
件,录入:
d 2 5-7
若你改变了主意不想删除信件了,你可用u命令来保留。 但必须在停
止程序之前保留。如:保留6号信件,录入:
u 6
存储信件时, 你必须指定文件名称。 比如要把刚读取的信件存储到
名为“important”的文件中去,录入:
s important
若你将信件存入一个已有的文件中,mail会把新内容加到文件的末尾。
若没有文件,mail会自动为你创建一个。
如果你想把一些人的信件存起来,可以使用以人名为名称的文件。如:
每次你读到一个叫Harley的人的信件,就可以录入
s harley
用此法可很好地整理你的函件。
每次你向Harley发出信件,自留一份副本,且存入harley文件。这样,
你就能存储
下与某人有关的所有信件——发出过的和接到过的。
当你终止mail程序时通过录入q命令,mail 会把所有删除的和存储了
的信件从邮箱中取走。除了这两部分外已读过的信件会被 mail 存入名为
mbox的文件,而未读过的信件被单独放置。
mail为何如此急于处理你的信件?当信件抵达时, 它们会被留在一个
叫mailbox的文件里。这个文件是硬盘系统的一部分。在许多系统中, 你
的mailbox所占用的硬盘内存并未计入你个人的份额。但mail 把信件转储
到文件中时,它存储于你的目录之中,存储空间便是你的了(在Unix 中,
文件存于目录之中)。
在一些系统中,尤其是那些由你付费的系统,在你的mailbox 中未读
信件占有的空间由你来付帐。
如果你偶然删除了过多的文件,或因为其它原因破坏了不少信件,你
可以用“x”(exit)而不是“q”来停止mail,该命令通知mail当前所作任
何变动无效。 若你没有时间来整理一些你所读过的信件, 在停止之前,
使用pre(preserve) 命令, 该命令告诉mail 不要把某些指定的信件置入
mbox文件。如把2号到6号的信件留在邮箱中,录入:
pre 2-6
保留所有信件在邮箱中,使用:
pre
通常你读取那些留在邮箱中的信件, 但有时你想读取那些存于自己
个人文件中的信件。比如:你或许在一个名为Harley的文件中存有一批来
自Harley的信件, 或许mail程序把一些你的信件存入了mbox文件(如前所
述)。
在此情况下,当录入mail命令时,使用“-f”,在-f之后,录入文件
名称,mail程序能从文件中读出信件。如从harley文件中读取信件,录入:
mail -f harley
从mbox 文件中读取信件,录入:
mail -f mbox
信件的回复
回复信件使用命令r,mail程序会自动使用信件发送人的地址。 你可
以录入你的信件,一次一行,正如我们已描述过的; 而且因为你在编写一
封信件, 你可以使用所有的代字号换符命令。 尤其在你的回复中可以运
用“~m”来包括原始的信件。
下面有个例子:你刚读到一封信件:
Do you want to go to a movie tonight ?- -kim
欲回复,录入
r
由此你可以开始录入你的信件:
Yes. I would love to go toa movie,
as soon as I finish writing Chapter 6.
-Harley
录完最后一行,按下“CTRL-D”发送信件。
如果原始信件的副本被送至其它用户标识,使用“r” 命令可以自动
把你的回复送到每个人那里,但有时,你只想把回复送到发信人处。 比
如, 你要回复一份有三十多人都收到的备忘录, 或许你不希望三十多人
都会收到你的回复,在这种情况下,使用“R”命令则可以告诉mail 只把
回复送到信件发送人处。
在你开始使用电子邮件后,信件很快就装满了你的邮箱(或mbox文件)。
为了不让信件被弄得乱七八糟,应该读完信件就处理。可循以下三条建议:
读完一条信件后,决定是否需要回复,若是则立即着手;
在开始读下一封信件之前,把上一封删除或存储;
若有疑问,先抛开。
编写新信件及转寄邮件
在你读取一封信件时, 你可能会决定给某人回送一封新的信件。 你
无需中止
mail再录入新命令,而可以通过“m”命令即可发出一封新的信件。
举例说明:你在读一封信件时意识到应立即给一位地址是
[email protected]的朋友发送一条便笺,只需简单录入
m [email protected]
还需录入信件标题,之后你以一般程序录入信件内容,按“CTRL-D ”
送出信件后,你又可以回到刚才中断的地方继续读下去。
有些mail程序中的命令可以把信件转寄他人。mail 程序不具备此种命
令,但要这样也不难。
首先使用“m”命令发送一封新的信件给某人,然后用“~f ”代字号
换符命令把你刚读到的信件包括入新信件中。
此如:,你刚读完3号信件并想把它转寄至地址为[email protected]的一
位朋友。 开始先录入命令发送新信件:
m [email protected]
你会看到
Subject:
录入标题并按“RETURN”。现在再录入命令将当前信件拷贝至新信件
之中:
~f
你会看到:
Interpolating: 3 (continue)
此行告诉你,mail已经把3号信件拷贝至新信件中。现在按“CTRL-D”
,你
会看到:
EOT
新信件已经发出,你可以回头继续读取文件。
当你采用该法转寄信件时,你也许会在使用“~f”之后用“~e”启
动文本编辑器,这样你可以在送出信件时去掉旧的信头行。
----
::snowypeng::
闲<=======:::::========>闪 |
|