linux多用户之间对话/通信

本文介绍了Linux系统中用户间通信的四种主要方式:talk命令实现在线对话、write命令用于同一系统内的用户通信、wall命令进行广播式消息传送及mesg命令控制是否接收消息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



Linux系统提供了多种方式实现用户间相互对话/通信,而传递的信息可以是文本文件或直接由键盘stdin输入的内容。

 

(1)talk命令  在线对话(Internet上两个用户之间的对话)

talk命令允许双方实现类似于MSN、QQ这样的实时对话,其命令格式如下:

$ talk user-name

$ talk user-name@host-name tty-name

当用户向另一用户发送对话请求,只有在对方同意接受对话请求,即对方也使用talk命令后,双方的对话才会建立。这时双方终端上都会显示 “[connect established]”,这样双方就可以从键盘输入文字,talk会把这些输入显示在对方的屏幕上,若任意一方按键就会退出对话状态。


(2)write命令  同一系统用户通信

使用write命令可以向任何已登录同一系统的另一位用户发送消息,这时在对方用户终端上就会自动显示出信息,而对方也同样可以使用write 命令来回复消息,这样双方之间就能互相通信了。

write命令的格式如下:

$ write user-name

此处user-name是将要与之通信的用户名,可以使用who 命令来查看系统中已登陆的用户名。输入write命令后,即可进入发送消息状态,这时就可以通过键盘输入消息,回车即可向对方发送此条消息了。要想退出发送消息状态,可以使用“Ctrl + d”退出write 命令回到shell。


(3)wall命令  广播式消息传送

使用wall命令可以向所有用户广播通知信息,而所有登录系统的用户都可收到该消息。wall命令有以下几种格式:

$ wall

$ wall filename

$ wall “Hello, everyone!”


(4)mesg命令 允许或拒绝接收消息

当一位用户正在全身心的投入某项工作的时候,可能会不想被另外一位用户用上述方式突然发送来的消息打断思路,那么就可使用mesg命令来设置是否允许接收由其它用户发来的信息。

mesg命令的格式如下:

$ mesg n

$ mesg y

其中,y表示允许接收信息,n 表示拒绝接收信息。如果mesg后面没有跟参数,则报告当前的许可状态。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值