Linux中國

使用 Linux 命令行與其他用戶進行通信

使用 Linux 命令行向其他用戶發送消息或許非常容易,這裡有一些相關的命令你可以考慮使用。在這篇文章中,我們會考察 4 個這樣的命令,看看它們是怎麼工作的。

wall

wall(「Write ALL」 的簡稱)命令允許你向所有系統中已登錄的用戶發送一條信息。這裡我們假設用戶都使用命令行在同一台伺服器上工作。雖然 wall 命令最常被系統管理員用於向用戶發布公告和傳遞信息(比如說,伺服器即將因維護而關閉),但它可以被任何用戶使用。

系統管理員可能會用類似下面的方式發送信息:

$ wall The system will be going down in 15 minutes to address a serious problem

而所有登錄的用戶都將看到類似這樣的信息:

Broadcast message from admin@dragonfly (pts/0) (Thu Mar  5 08:56:42 2020):
The system is going down in 15 minutes to address a serious problem

如果希望在消息中使用單引號,你可以像這樣將信息用雙引號括起來:

$ wall "Don't forget to save your work before logging off"

最外層的雙引號不會出現在發出的消息中,但是如果沒有它們,wall 會停下並等待輸入一個配對的單引號。

mesg

如果出於某種理由你不想接收來自另一個用戶的消息,你可以使用 mesg 命令來屏蔽這些消息。這個命令可以接受一個 n 作為參數來拒絕某用戶的消息,或者接收一個 y 作為參數來接收用戶發來的消息。

$ mesg n doug
$ mesg y doug

被屏蔽的用戶不會被告知這一事實。你也可以像這樣使用 mesg 來屏蔽或者接收所有消息:

$ mesg y
$ mesg n

write

另一個在不使用電子郵件的情況下發送文本的命令是 write,這個命令可以用來和一個特定的用戶通信。

$ write nemo
Are you still at your desk?
I need to talk with you right away.
^C

輸入你的信息後用 ctrl-c 退出,這樣就完成了通信。這個命令允許你發送文本,但並不會建立一個雙向的通話。它只是將文本發送過去而已。如果目標用戶在多個終端上登錄,你可以指定你想將消息發送到哪一個終端,否則系統會選擇空閑時間最短的那個終端。

$ write nemo#1

如果你試圖向一個將消息屏蔽了的用戶發送信息,你應該會看到這樣的輸出:

$ write nemo
write: nemo has messages disabled

talk/ytalk

talkytalk 命令讓你可以和一個或多個用戶進行互動式的聊天。它們會展示一個有上下兩個子窗口的界面,每個用戶向顯示在他們屏幕上方的窗口內輸入內容,並在下方的窗口看到回複信息。要回復一個talk 請求,接收方可以輸入 talk,在後面加上請求方的用戶名。

Message from Talk_Daemon@dragonfly at 10:10 ...
talk: connection requested by dory@127.0.0.1.
talk: respond with:  talk dory@127.0.0.1

$ talk dory

如果使用的是 ytalk,那麼窗口中可以包含多於兩個參與者。正如下面的例子所展示的(這是上面 talk dory 命令的結果),talk 通常指向 ytalk

----------------------------= YTalk version 3.3.0 =-----------------------Is the report ready?

-------------------------------= nemo@dragonfly =-------------------------Just finished it

如上所述,在通話的另一側,talk會話界面的窗口是相反的:

----------------------------= YTalk version 3.3.0 =-----------------------Just finished it

-------------------------------= dory@dragonfly =-------------------------Is the report ready?

同樣的,使用 ctrl-c 來退出。

如果要和非本機的用戶通訊,你需要加上 -h 選項和目標主機名或IP地址,就像這樣:

$ talk -h 192.168.0.11 nemo

總結

Linux 上有若干基本的命令可以用來向其他登錄的用戶發送消息。如果你需要向所有用戶快速發送信息或是需要便捷的電話替代品,又或是希望能簡單地開始一個多用戶快速通訊會話,這些命令會十分實用。

一些命令如 wall 允許廣播消息但卻不是互動式的。另外的一些命令如 talk 允許多用戶進行長時間通訊,當你只需要非常快速地交換一些信息,它們可以你你避免建立一個電話會議。

via: https://www.networkworld.com/article/3530343/communicating-with-other-users-on-the-linux-command-line.html

作者:Sandra Henry-Stocker 選題:lujun9972 譯者:linusboyle 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國