鸟哥的Linux私房菜读书笔记--主机上的用户讯息传递

版权声明:本文属博主原创,转载请联系QQ528055624 https://blog.csdn.net/qq_41825534/article/details/83061485

1、查询使用者

之前学习过的id和finger都可以以进行查询用户的相关数据,最简单的还可以使用last查看

使用命令:w    命令:who    命令  lastlog    #查询账号的登入情况

2、使用者对谈:write、mesg、wall

命令:write  使用者账号  用户所在的终端接口    #与用户交流

例:write  vbird1  pts/2

如果不想让用户接受任何讯息

命令:$  mesg n    #决绝所有信息,但对root传来的讯息无法阻挡。

命令:$  mesg  y    #开始接受信息

命令:$  wall  “广播内容”    #对系统所有用户发送广播

3、使用者邮箱信件:mail

邮箱mailbox都会放置在/var/spool/mail里面。例如vbird就具有/var/spool/mail/vbird这个mailbox。

寄邮件:

命令:$  mail -s "邮件标题"  username@localhost    #如果寄给本机的使用者,甚至不需要加@localhost

例:我以 root 寄信给 vbird1 ,信件标题是『 nice to meet you 』,则:
[root@study ~]# mail -s "nice to meet you" vbird1
Hello, D.M. Tsai
Nice to meet you in the network.
You are so nice. byebye!
. <==这里很重要喔,结束时,最后一行输入小数点 . 即可!
EOT
[root@study ~]# <==出现提示字符,表示输入完毕了!
如此一来,你就已经寄出一封信给 vbird1 这位使用者啰,而且,该信件标题为: nice to meet you,信件内容就如同上面提到的。不过,你或许会觉得 mail 这个程序不好用~ 因为在信件编写的过程中,如果写错字而按下 Enter 进入次行,前一行的数据很难删除ㄟ! 那怎么办?没关系啦!我们使用数据流重导向啊!呵呵!利用那个小于的符号 ( < ) 就可以达到取代键盘输入的要求了。也就是说,你可以先用 vi 将信件内容编好, 然后再以 mail -s "nice to meet you" vbird1 < filename 来将文件内
容传输即可。
例题:请将你的家目录下的环境变量文件 (~/.bashrc) 寄给自己!
答:mail -s "bashrc file content" dmtsai < ~/.bashrc
例题:透过管线命令直接将 ls -al ~ 的内容传给 root 自己!
答:ls -al ~ | mail -s "myfile" root
刚刚上面提到的是关于『寄信』的问题,那么如果是要收信呢?呵呵!同样的使用 mail 啊! 假设我以 vbird1 的身份登入主机,然后输入 mail 后,会得到什么?
[vbird1@study ~]$ mail
Heirloom Mail version 12.5 7/5/10. Type ? for help.
"/var/spool/mail/vbird1": 1 message 1 new
>N 1 root Wed Jul 22 02:09 20/671 "nice to meet you"
& <==这里可以输入很多的指令,如果要查阅,输入 ? 即可!

当输入mail指令看到信件时,信件前面的>代表目前处理的信件,在大于符号的右边的N代表信件尚未读过。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 则会实际进行你刚刚所执行的任何动作 (尤其是删除!)

旧版的 CentOS 在使用 mail 读信后,透过 q 离开始,会将已读信件移动到 ~/mbox 中,不过目前CentOS 7 只需按下q即可离开

猜你喜欢

转载自blog.csdn.net/qq_41825534/article/details/83061485
今日推荐