您的位置:首页 > 运维架构 > Linux

linux登录用户(终端)间的通信

2012-12-16 00:00 218 查看
1、write命令

使用权限 : 所有使用者
  使用方式 :
   write user [ttyname]
  说明 : 通过write指令可传递信息给另一位登入系统的用户,当输入完毕后,键入EOF(ctrl+D)表示信息结束,write指令就会将信息传给对方。如果接收信息的用户不只登入本地主机一次,你可以指定 接收信息的终端机编号。
  
  参数 :
  user : 预备传讯息的使用者帐号
  ttyname : 如果使用者同时有两个以上的 tty 连线,可以自行选择合适的 tty 传讯息

例如:用 #w 命令查看当前已登录的用户:



假如输入 tty 后显示当前在pts/1下,接下来我们要向在pts/2下的root发送信息,输入命令:write root pts/2 按回车后输入信息,可以看到pts/1下:



而在pts/2下的终端可以看到:



按crtl+D结束输入。

当然,我们也可以直接给输入 write root

注意,使用write命令应先用mesg (mesg y 允许write,mesg n 不允许write)查看是否显示 is y,如下图:



如果是 is no的话,应先使用 mesg y ,如下图:



2、wall命令

wall -- send a message to everybody’s terminal(广播一条信息给所有登录的终端)
SYNOPSIS
wall [-n] [ message ]
DESCRIPTION
wall 会将信息传给每一个 mesg 设定为 yes 的上线使用者。信息结束时需加上 EOF (通常用 Ctrl+D)。
OPTIONS
-n Suppresses the normal banner printed by wall, changing it to "Remote broadcast message".

This option is only available for root if wall is installed set-group-id, and is used by rpc.walld(8).

例如:

输入命令:wall hello,将在每个登录的终端接收到一条"hello"的信息。如图:







3、mesg指令
mesg命令:是否允许其他用户用write命令给自己发送信息。如果允许别人给自己发送信息,输入命令:
# mesg y
否则,输入:
# mesg n 对于超级用户,系统的默认值为 n;而对于一般用户系统的默认值为y。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息