1. 程式人生 > >linux登錄用戶(終端)間的通信

linux登錄用戶(終端)間的通信

註意 系統 登錄 例如 廣播 tty 查看 命令 用戶

轉載

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。

4、who am i/tty可以顯示終端信息,whoami顯示當前用戶名字

技術分享

linux登錄用戶(終端)間的通信