Linux学习之给指定用户发邮件

发送邮件

进入 mail 程序后的操作都很简单,但是可以不进入 mail 的 & 操作提示符界面,下面举几个实用例子:

1、给 [email protected] 发信

1 [[email protected] ~]# mail [email protected]
2
3   Subject: Hi, a mail to snailwarrior!
4
5   This is hoho_zhao in BeiJing.
6
7   .
8
9   Cc: //直接输入回车就不抄送给谁了

  【注意】使用.或者Ctrl+D来结束内容输入

  【注意】默认情况下连按两次Ctrl+C键中断工作

  2、如果 snail 是本系统用户,这样给他发信

1 [[email protected] ~]# mail -s "hi, snail, i‘m root" snail
2
3   plz reply me, snail.
4
5   .
6
7   Cc:

  或者

1  [[email protected] ~]# mail -s "hi, snail, i‘m root" snail < 邮件内容

  -s 主题

  -c 抄送

  -b 暗送

接收邮件

同样的使用 mail ,假设以root的身份登陆主机,然后输入 mail 后,会输出以下信息:

1 [[email protected] ~]$ mail
2 Mail version 8.1 6/6/93.  Type ? for help.
3 "/var/spool/mail/vbird1": 1 message 1 new
4 >N  1 [email protected]   Wed Mar  4 13:36  18/663   "nice to meet you"
5 &  <==这里可以输入很多的命令,如果要查阅,输入 ? 即可!

在 mail 当中的提示字符是 & 符号,信件的前面那个 > 代表目前处理的信件,而在大于符号的左边那个 N 代表该封信件尚未读过,如果我想要知道这个 mail 内部的命令有哪些,可以在 & 之后输入『 ? 』,就可以看到如下的画面:

 1 & ?
 2     Mail   Commands
 3 t <message list>                type messages
 4 n                               goto and type next message
 5 e <message list>                edit messages
 6 f <message list>                give head lines of messages
 7 d <message list>                delete messages
 8 s <message list> file           append messages to file
 9 u <message list>                undelete messages
10 R <message list>                reply to message senders
11 r <message list>                reply to message senders and all recipients
12 pre <message list>              make messages go back to /usr/spool/mail
13 m <user list>                   mail to specific users
14 q                               quit, saving unresolved messages in mbox
15 x                               quit, do not remove system mailbox
16 h                               print out active message headers
17 !                               shell escape
18 cd [directory]                  chdir to directory or home if none given

<message list> 指的是每封邮件的左边那个数字啦!而几个比较常见的命令是:

命令 意义
h 列出信件标头;如果要查阅 40 封信件左右的信件标头,可以输入『 h 40 』
d 删除后续接的信件号码,删除单封是『 d10 』,删除 20~40 封则为『 d20-40 』。 不过,这个动作要生效的话,必须要配合 q 这个命令才行(参考底下说明)!
s 将信件储存成文件。例如我要将第 5 封信件的内容存成 ~/mail.file:『s 5 ~/mail.file』
x 或者输入 exit 都可以。这个是『不作任何动作离开 mail 程序』的意思。 不论你刚刚删除了什么信件,或者读过什么,使用 exit 都会直接离开 mail,所以刚刚进行的删除与阅读工作都会无效。 如果您只是查阅一下邮件而已的话,一般来说,建议使用这个离开啦!除非你真的要删除某些信件。
q 相对于 exit 是不动作离开, q 则会进行两项动作: 1. 将刚刚删除的信件移出 mailbox 之外; 2. 将刚刚有阅读过的信件存入 ~/mbox ,且移出 mailbox 之外。鸟哥通常不很喜欢使用 q 离开, 因为,很容易忘记读过什么咚咚~导致信件给他移出 mailbox 说~

由于读过的信件若使用『 q 』来离开 mail 时,会将该信件移动到 ~/mbox 中,所以你可以这样想象: /var/spool/mail/vbird1 为 vbird1 的『新件匣』,而 /home/vbird1/mbox 则为『收件匣』的意思,那如何读取 /home/vbird1/mbox 呢?就使用『mail -f /home/vbird1/mbox』即可。

时间: 2024-08-06 14:59:07

Linux学习之给指定用户发邮件的相关文章

Linux使用mailx通过外部smtp发邮件

利用mailx发邮件的功能可以做很多事,通常可以通过脚本让主机判断运行状态给指定邮箱发邮件. ##环境:虚拟机,CentOS7 通过yum安装: yum install -y mailx yum安装非常简单,其中要注意的是mailx版本最好大于7,redhat5系列之前自带的mailx发邮件需要通过sendmail程序来发送,所以需要更新版本 源码包安装:mailx-12.4 cd #回到家目录 tar xvjf mailx-12.4.tar.bz2 && cd mailx-12.4.ta

Linux学习笔记——使用指定的用户权限执行程序——sudo

      sudo可以用来以其他用户身份执行命令,sudo命令可以针对单个命令授予临时权限.sudo仅在需要时授予用户权限,减少了用户因为错误执行命令损坏系统的可能性. 1:sudo的帮助信息如下: [email protected]:~/桌面$ sudo --helpsudo - 以其他用户身份执行一条命令 usage: sudo -h | -K | -k | -Vusage: sudo -v [-AknS] [-g group] [-h host] [-p prompt] [-u user

Linux学习笔记(四)之用户登录

1.Linux是一个网络操作系统,作为多用户,多任务的操作系统,其系统资源是所有用户共享的.任何要使用系统资源者必须先在系统内登记,注册,即开设用户账号,该账号又包含用户名,口令,所用的shell,使用权限等.为了计算机系统的安全,LInux会对每一个要求进入系统的用户进行用户名和口令的验证,如果验证成功则用户登录成功,否则系统拒绝登录. 2.其中用户登录又分为两种,一种是用户的终端登录,另外一种是远程登录,如果用户是在本地终端登录Linux系统,便为用户的终端登录,如果用户是通过网络登录Lin

Linux搭建smtp服务器+laravel5.2发邮件配置

/** * 这里主要是想通过自己搭建smtp服务器,配置laravel5.2框架,实现邮箱发邮件功能, * 主要内容是搭建smtp服务器,laravel5.2发邮件顺手提一下 */ /** * 1.laravel5.2通过Mail实现发邮件的功能 * 2.搭建自己的smtp服务器 * 3.修改mail的配置,将主机和账号修改为自己的smtp代理服务器 * * 相关技术基础(php基础知识.laravel5.2框架的简单操作.Linux运维基础知识) */ /** * 1.laravel5.2通过

Linux学习笔记之常用用户管理类命令

开始这个话题之前应该先了解下/etc/shadow这个文件中的构造,对于列所代表的意思大体有个了解,先以ftpuser账户来介绍:后边会给出一些相应的例题来做使用说明补充(好吧我承认,这,又是一篇博客作业^_^万恶的标题党). ftpuser:$6$T9WUEls/$AK4hTO1bZ7MXW7VoMej8e7tVG1qqxPy5axVJAAIz4m6uuzZmoYDcQjUG2XlXx7klx/i8yJ1luZDtoKYwJAMa4.:16929:0:99999:7:5:: 总共有9个字段被"

linux mail利用外部邮箱地址发邮件

mail命令发送邮件需要sendmail或postfix服务 三种常用格式发信 mail -s "标题" [email protected] #第一种方法,你可以把当前shell当成编辑器来用,编辑完内容后Ctrl-D结束 echo “mail content”|mail -s "标题" [email protected] #第二种方法,我用的最多,可能是喜欢管道的缘故吧 mail -s "标题" [email protected] < f

linux 定时巡检系统时间并且发邮件

获取系统时间用到data命令 date 发送邮件用的是mail命令,这个需要安装,yum -y intall mail 配置smtp,添加如下vi /etc/mail.rc set from=[email protected].com set smtp=smtp.qq.com set smtp-auth-user=123456 set smtp-auth-password=runoob set smtp-auth=login 测试 :mail -s "标题" 可以多个邮箱,邮箱,邮箱

Linux学习笔记:创建用户与授权

一般就用GRANT来创建用户和授权 语法格式 GRANT priv_type [(column_list)] [, priv_type [(column_list)]] ... ON [object_type] priv_level TO user_specification [, user_specification] ... [REQUIRE {NONE | ssl_option [[AND] ssl_option] ...}] [WITH {GRANT OPTION | resource_

Linux上给数据库指定用户权限

要给数据库指定用户只能操作这一个数据库,两句话就行了. grant all on 对应的数据库.* to '要创建的用户名'@'ip' identified by '要设的密码' with grant option;  对应的数据库.* :指的是这个数据库的增删改查等操作都可以: 'ip': 如果你想让任何一个地方的IP都能连接的话就给'%'就好了,要限定的话就给相应的IP在那里就行了 然后刷新下权限 flush privileges; 如果不是太确定,就先自己连接测试下^_^