文章目錄
1、write命令
(1)write命令的基本信息如下。
- 命令名稱:write。
- 英文原意:send a message to another user。
- 所在路徑:/usr/bin/write。
- 執行權限:所有用戶。
- 功能描述:向其他用戶發送信息。
命令格式:
[root@localhost ~ ] # write 用戶名 終端號
#向在pts/1(遠程終端1)登錄的user1用戶發送信息,使用"ctrl+D"快捷鍵保存發送的數據
[root@localhost ~ ] # write user1 pts/1
hel1o I will be in 5 minutes to restart,please save your data
(2)登陸終端號
- Linux系統下有6個本地字符終端
用tty1-6來表示
每個終端的切換命令的快捷鍵是:alt+F1-6 - 一個本地圖形終端
用tty7來表示
切換使用的快捷鍵爲ctrl+alt+F7(前提需要安裝並啓動系統的圖形界面,並且快捷鍵按住3秒以上。)。 - 遠程終端
默認用pts/0-255來表示,Linux系統還支持再擴展。 - 直接輸入
w
,就可以查看所有鏈接系統的終端
最後顯示執行w命令的終端就是當前終端。
w
命令和ls
命令是一樣的,當命令執行之後就消失了,很難抓到兩個同時執行w
命令的終端。
(3)練習
- 查看Linux系統中所有鏈接的用戶
- 向root-tty1發送信息
回車後,ctrl+d進行保存併發送。 - 在root-tty1客戶端查看信息
2、wall命令
write命令用於給指定用戶發送信息,而wall命令用於給所有登錄用戶發送信息,包括你自己。
執行時,在wall命令後加入需要發送的信息即可,例如:
[root@localhost ~ ] # wall "I will be in 5 minutes to restart,please save your data"
或者輸入wall命令回車後,輸入需要發送的信息。然後回車後,ctrl+d進行保存併發送。
[root@DevOps ~ ] # wall
11111122222223333
[root@DevOps ~] #
Broadcast message from rooteDevops (pts/e)(Wed Jan 22 17:20:59 2020):
11111122222223333
3、mail 命令
mail是Linux的郵件客戶端命令,可以利用這個命令給其他用戶發送郵件。
(1)mail命令的基本信息如下。
- 命令名稱:mail。
- 英文原意:send and receive Internet mail。
- 所在路徑:/bin/mail。
- 執行權限:所有用戶。
- 功能描述:發送和接收電子郵件。
(2)例子1:發送郵件
如果我們想要給其他用戶發送郵件,則可以執行如下命令:
#發送郵件給user1用戶
[root@localhost ~ ] # mail user1
Subject:hello <-郵件標題
Nice to meet you!<-郵件具體內容
. <-使用"."來結束郵件輸入
(也可以直接ctrl+d直接保存併發送,都可以)
我們接收到的郵件都保存在“/var/spool/mail/用戶名”中,每個用戶都有一個以自己的用戶名命名的郵箱。
(3)例子2:查看已經接收的郵件
我們可以直接在命令行中執行mail命令,進入mail的交互命令中,可以在這裏查看已經接收到的郵件。例如:
#未閱讀編號發件人時間標題
[root@localhost ~ ] # mail Heirloom Mail version 12.4 7/29/08.Type?for help.
"/var/spool/mail/root":1 message 1 new
>N 1 root Mon Dec 522:4568/1777 "test mai1" <-之前收到的郵件
>N 2 root Mon Dec 523:0818/602 "hello"
可以看到已經接收到的郵件列表,“N”代表未讀郵件,如果是已經閱讀過的郵件,則前面是不會有這個“N”的;之後的數字是郵件的編號,我們主要通過這個編號來進行郵件的操作。如果我們想要查看第一封郵件,則只需輸入郵件的編號“1”就可以了。
這些交互命令是可以簡化輸入的,比如“headers”命令,就可以直接輸入“h”,這是列出郵件標題列表的命令。我們解釋一下常用的交互命令。
- 在交互命令中執行“?”,可以查看這個交互界面支持的命令。
- headers:列出郵件標題列表,直接輸入“h”命令即可。
- delete:刪除指定郵件。比如想要刪除第二封郵件,可以輸入“d 2”。
- save:保存郵件。可以把指定郵件保存成文件,如“s 2/tmp/test.mail”。
- quit:退出,並把已經操作過的郵件進行保存。比如移除已刪除郵件、保存已閱讀郵件等。
- exit:退出,但是不保存任何操作。
(4)例子3:發送文件內容
如果我們想把某個文件的內容發送給指定用戶,則可以執行如下命令:
#把/root/anaconda-ks.cfg 文件的內容發送給 root用戶
[root@localhost ~] # mail -s "test mail" root < /root/anaconda-ks.cfg
選項:
-s:指定郵件標題
我們在寫腳本時,有時需要腳本自動發送一些信息給指定用戶,把要發送的信息預先寫到文件中,是一個非常不錯的選擇。(這種方式比較常用,避免了在交互頁面中進行操作。)