
这一块内容相对来说,对于初学者其中用的比较少,但是确实比较有意思的一块内容——学习毕竟大部分时间是枯燥的,能从学习中得到乐趣,我觉得还是挺有意义的。
通信传递意思是对于登录在同一个系统上的用户进行信息传递,即有点微信聊天的意思,不过这种聊天仅支持单向的。具体下文会涉及如下的命令使用:who,write,mesg 和 wall。看起来多,但是用起来比较容易。
who 命令who命令主要是查看即时系统上有多少用户在登录,语法如下:
who案例:
[linc@instance-jgzzg4xl ~]$ who
songj pts/0 2025-02-06 14:44 (222.71.10.10)
root pts/1 2025-02-06 14:50 (222.71.10.10)
linc pts/2 2025-02-06 14:50 (222.71.10.10)上述可以看到目前系统上合计有三个用户处于登录状态,而字段分别是使用者账号,使用者所在终端接口和登录的时间。这里请注意黑体字部分,下文还会用到,也是who这个命令的主要作用。
write 命令write 命令可以理解为像其他登录用户传递信息,语法如下:
write 登录者账号 [登录者所在终端接口]案例:
[songj@instance-jgzzg4xl ~]$ write linc pts/2
hello
===> 在linc界面
[linc@instance-jgzzg4xl ~]$
Message from songj@instance-jgzzg4xl on pts/0 at 15:24 ...
hello
EOF可以看到linc账号登录界面出现了消息,并且正在运行的界面被打断。
可以想这样一个场景,如果某一个用户不想要被打断,也就是说他不想要接受通信,可不可以?当然可以了,这时就需要mesg命令出场了。
mesg 命令mesg 命令可以理解为是否允许被动通信,语法如下:
mseg n
==> 不允许通信,即无法收到信息,也无法发送信息
mesg y
==> 允许通信
***》 但是上述的是否允许都无法拒绝root用户的通信案例:
==》 对于账号songj
[songj@instance-jgzzg4xl ~]$ mesg n
[songj@instance-jgzzg4xl ~]$ mesg
is n
==> 对于账号linc
[linc@instance-jgzzg4xl ~]$ write songj
write: songj has messages disabled因为此时的songj账号已经被设置了拒绝通信,那么普通账号linc是无法对其发起通信的。而将songj账号通信打开,那么就可以继续发送消息了。
[songj@instance-jgzzg4xl ~]$ write linc
write: you have write permission turned off
[songj@instance-jgzzg4xl ~]$ mesg y
[songj@instance-jgzzg4xl ~]$ write linc
hellowall 命令如果想同时对系统上已登录用户进行通信,那么就可以使用wall 命令,具体语法如下:
wall 通信信息案例:
[root@instance-jgzzg4xl ~]# wall "I will send your messages,Plase be cautions"
[root@instance-jgzzg4xl ~]#
Broadcast message from root@instance-jgzzg4xl (pts/1) (Thu Feb 6 15:36:33 2025):
I will send your messages,Plase be cautions我们在xshell界面可以发现,不仅仅账号songj和linc账号收到了信息,其自身root账号也收到了信息,如下:

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。