linux登錄用戶(終端)間的通信
轉載
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登錄用戶(終端)間的通信