1、write命令
(1)write命令的基本資訊
- 命令名稱:
write
- 英文原意:
send a message to another user
- 所在路徑:
/usr/bin/write
- 執行許可權:所有使用者。
- 功能描述:向其他使用者傳送資訊。
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)練習
1)檢視Linux系統中所有連結的使用者:
2)向root-tty1
傳送資訊:
回車後,ctrl+d
進行儲存併傳送。
3)在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的郵件客戶端命令,可以利用這個命令給其他使用者傳送郵件。
mail
命令的基本資訊:
- 命令名稱:
mail
- 英文原意:
send and receive Internet mail
- 所在路徑:
/bin/mail
- 執行許可權:所有使用者。
- 功能描述:傳送和接收電子郵件。
使用1:傳送郵件
如果我們想要給其他使用者傳送郵件,則可以執行如下命令:
# 傳送郵件給user1使用者
[root@localhost ~]# mail user1
Subject:hello <-郵件標題
Nice to meet you!<-郵件具體內容
. <-使用"."來結束郵件輸入
(也可以直接ctrl+d直接儲存併傳送,都可以)
我們接收到的郵件都儲存在/var/spool/mail/使用者名稱
中,每個使用者都有一個以自己的使用者名稱命名的郵箱。
使用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
:退出,但是不儲存任何操作。
使用3:傳送檔案內容
如果我們想把某個檔案的內容傳送給指定使用者,則可以執行如下命令:
# 把/root/anaconda-ks.cfg 檔案的內容傳送給 root使用者
[root@localhost ~]# mail -s "test mail" root < /root/anaconda-ks.cfg
選項:
-s:指定郵件標題
我們在寫指令碼時,有時需要指令碼自動傳送一些資訊給指定使用者,把要傳送的資訊預先寫到檔案中,是一個非常不錯的選擇。(這種方式比較常用,避免了在互動頁面中進行操作。)