linux软件跨用户通信,Linux终端多用户通信实用命令

一  命令

1.1 write

该命令将当前终端(源)输入的字符拷贝至目标用户的终端,从而发送消息给系统中某个用户。用法如下:

#write

[Ctrl+D]或[Ctrl+C]

当执行write命令时,目标用户将得到如下格式的标题:

Message from 源用户名@源主机 on 源字符终端 at 时:分 ...

随后输入的字符文本将被拷贝至指定用户的终端。目标用户若想回应,也必须执行write命令。

输入结束后,键入EOF(Ctrl+D)字符或中断(Ctrl+C)指令。目标用户将看到EOF消息,表明本次对话结束。

当目标用户登录多个终端时,可使用"write "命令显式地指定目标终端名称。或者,交由write命令自动选择空闲时间最短的那个终端(该终端通常当前在用)。

注意,与write命令类似的还有talk命令。该命令为一个可视化通信程序,用法更为复杂。

1.2 wall

该命令发送消息给系统中所有登录用户。用法如下:

# wall 或

# wall

[Ctrl+D]

其中,消息可作为wall命令的参数直接发送,也可写入wall命令的标准输入(此时消息长度限制为22行,且必须以EOF键结束)。

消息发送完毕时,目标用户将得到如下格式的标题和消息:

Broadcast message from 源用户名 (源字符终端) (星期 月 日 时:分:秒 年):

消息内容

该命令忽略时区变量,即标题中打印的时间基于系统本地时间。

1.3 mesg

该命令控制其他非root用户对当前终端的写访问权,如是否允许其他用户发来消息。用法如下:

该命令发送消息给系统中所有登录用户。用法如下:

# mesg [y|n]

其中,y允许写入当前终端,n则禁止写入。若不指定选项y|n,则mesg命令输出该终端的当前访问状态。

二  示例

上节命令使用示例如下(wall命令未列出其他用户的终端显示):

1 [wangxiaoyuan_@localhost ~]$ w2 11:30:58 up 85 days, 3:45, 20 users, load average: 0.12, 1.82, 2.77

3 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT4 wangxiao pts/1 10.46.44.16 Mon09 0.00s 23.57s 0.00s sshd: wangxiaoyuan_ [priv]

5 root pts/12 10.46.51.170 Mon15 19:49m 0.00s 0.00s -bash6 litianch pts/15 10.46.44.16 10:42 9:52 0.02s 0.02s -bash7 litianch pts/22 10.46.44.29 Fri17 20:39m 0.09s 0.09s -bash8 [wangxiaoyuan_@localhost ~]$ write litianchi9 write: litianchi is logged in more than once; writing to pts/15

10 hello tianchi,type 'write wangxiaoyuan_' and press ENTER11 then enter 'welcome!' and press Ctrl+D to send the message to me.12 //Ctrl+C13 [litianchi@localhost ~]$14 Message from wangxiaoyuan_@localhost.localdomain on pts/1 at 10:43...15 hello tianchi,type 'write wangxiaoyuan_' and press ENTER16 then enter 'welcome!' and press Ctrl+D to send the message to me.17 EOF18 //Enter19 [litianchi@localhost ~]$ write wangxiaoyuan_20 welcome!21 //Ctrl+D22

23 [wangxiaoyuan_@localhost ~]$24 Message from litianchi@localhost.localdomain on pts/15 at 10:44...25 welcome!26 EOF27 //Enter28 [wangxiaoyuan_@localhost ~]wall hello everyone!29

30 Broadcast message from wangxiaoyuan_ (pts/21) (Fri Oct 31 16:54:56 2014):31

32 hello everyone!33

34 [wangxiaoyuan_@localhost ~]$ wall35 world!36 //Ctrl+C37 Broadcast message from wangxiaoyuan_ (pts/1) (Tue Nov 25 11:38:12 2014):38

39 world!40

41 [wangxiaoyuan_@localhost ~]$ wall "Who's compling, please terminate! Just a test, pls go on..."

42 [wangxiaoyuan_@localhost ~]$43 Broadcast message from wangxiaoyuan_ (pts/21) (Fri Oct 31 17:25:03 2014):44

45 Who's compling, please terminate! Just a test,pls go on...46

47 [litianchi@localhost ~]$ mesg48 is y49 [litianchi@localhost ~]$ mesg n50 [litianchi@localhost ~]$ mesg51 is n52 [wangxiaoyuan_@localhost ~]$ write litianchi pts/15

53 write: litianchi has messages disabled on pts/15

三  总结

本文所述的write和wall命令可能用于下述情况:

1) 需要独占编译资源时,可发送消息通知不要再执行编译任务;

2) 急需编译资源,而其他用户又在编译版本时,可发送消息通知暂停;

3) 遇到某用户执行死循环占用大量CPU时,可发送消息提醒退出。

不建议用于Linux系统用户间聊天通信(包括talk命令),毕竟过于原始。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值