Linux tee命令使用詳解
tee
命令主要被用來向standout(標(biāo)準(zhǔn)輸出流,通常是命令執(zhí)行窗口)輸出的同時也將內(nèi)容輸出到文件,下面是tee
的man 信息
read from standard input and write to standard output and files
下面我們通過幾個應(yīng)用場景來熟悉tee
命令。
場景1: 如何使用tee命令
tee命令格式是:
tee [OPTION]... [FILE]...
從man文件的定義了解 tee從標(biāo)準(zhǔn)輸入流讀取數(shù)據(jù),所以這里我們使用一個簡單的命令產(chǎn)生輸出流作為tee
的輸入流,這里就選用ping
命令,
[mysql@localhost ~]$ ping baidu.com PING baidu.com (220.181.57.216) 56(84) bytes of data. 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=1 ttl=128 time=30.1 ms 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=2 ttl=128 time=33.1 ms 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=3 ttl=128 time=31.9 ms 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=4 ttl=128 time=30.9 ms ...
現(xiàn)在我們希望輸出到控制臺的同時,將輸出到控制臺的內(nèi)容保存到另外的文件,以便其他的用途,那么這時候tee
命令就可以發(fā)揮作用了,
[mysql@localhost ~]$ ping baidu.com | tee ping-baidu.log #輸出到控制臺的同時,將內(nèi)容保存到ping-baidu.log文件中 PING baidu.com (220.181.57.216) 56(84) bytes of data. 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=1 ttl=128 time=30.6 ms 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=2 ttl=128 time=30.5 ms 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=3 ttl=128 time=30.2 ms ^C[mysql@localhost ~]$ cat ping-baidu.log #檢查文件內(nèi)容是否和輸出一致 PING baidu.com (220.181.57.216) 56(84) bytes of data. 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=1 ttl=128 time=30.6 ms 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=2 ttl=128 time=30.5 ms 64 bytes from 220.181.57.216 (220.181.57.216): icmp_seq=3 ttl=128 time=30.2 ms
場景2: 如何向文件里面追加內(nèi)容?
上面的操作中,輸出到ping-baidu.log,如果這個文件存在,則先將文件里面的內(nèi)容全部清除,然后再輸入內(nèi)容,對于某些場景下這種方式則不適合,我們希望每次的輸出是追加到文件里面,這時我們可以通過-a
參數(shù)來指定.
ping baidu.com | tee -a ping-baidu.log
場景3: 如何同時輸出到多個文件?
直接在tee
命令后面追加待輸入的文件名即可,具體格式是:
ping baidu.com | tee ping.log ping-baidu.log
場景4: 如何將tee命令的輸出重定向為另一個命令的輸入流
直接在tee
命令后面接|
和下一個命令,就是按照pipeline的方式來弄
場景5: 通過使用tee命令來提高寫入文件的權(quán)限等級
在實際操作liunx服務(wù)器的時候,我們在配置某些文件的時候,配置完了,保存的時候,發(fā)現(xiàn)自己當(dāng)前的用戶不具有保存文件的文件,這時候內(nèi)心是十分奔潰的,有沒有解決的方式呢?這時候tee
命令來解救我們的煩惱。
具體的操作就是在文件保存的時候輸入:w !sudo tee %
,這時候vi
會提醒你輸入sudo操作的密碼,輸入正確之后,文件就保存了,此時你可以安心的:q!
退出文件了。
場景6: 如何讓tee忽略中斷事件
-i
參數(shù)能夠讓tee
忽略中斷事件(SIGINT)
ping baidu.com | tee -i ping.log
參考:
https://www.howtoforge.com/linux-tee-command/
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持我們。
上一篇:如何在CentOS8上安裝和配置Postfix郵件服務(wù)器的方法示例
欄 目:Linux/apache
下一篇:Ubuntu16.04環(huán)境下搭建FTP服務(wù)器的教程
本文標(biāo)題:Linux tee命令使用詳解
本文地址:http://mengdiqiu.com.cn/a1/Linux_apache/10636.html
您可能感興趣的文章
- 04-02linux關(guān)閉串口命令 關(guān)閉linux端口命令
- 04-02linux文件命令重命名 linux重命名文件名命令
- 04-02linux命令注入過濾 linux 代碼注入
- 04-02linux中jobs命令 shell jobs命令
- 04-02linux依次執(zhí)行命令 linux命令的執(zhí)行過程是怎樣的?新手必讀
- 04-02linux命令免輸入 linux配置免密登錄
- 04-02linux命令注銷vnc linux命令行注銷用戶
- 04-02軟交換linux命令 軟交換網(wǎng)絡(luò)主要協(xié)議有哪些
- 04-02linux命令歷史記錄 linux查看歷史記錄的操作命令
- 04-02linux命令頁面 linux命令頁面中文


閱讀排行
本欄相關(guān)
- 04-02linux關(guān)閉串口命令 關(guān)閉linux端口命令
- 04-02linux文件命令重命名 linux重命名文件名
- 04-02linux中jobs命令 shell jobs命令
- 04-02linux命令注入過濾 linux 代碼注入
- 04-02linux依次執(zhí)行命令 linux命令的執(zhí)行過程
- 04-02linux命令注銷vnc linux命令行注銷用戶
- 04-02linux命令免輸入 linux配置免密登錄
- 04-02軟交換linux命令 軟交換網(wǎng)絡(luò)主要協(xié)議
- 04-02linux命令歷史記錄 linux查看歷史記錄的
- 04-02linux命令頁面 linux命令頁面中文
隨機(jī)閱讀
- 08-05DEDE織夢data目錄下的sessions文件夾有什
- 01-10delphi制作wav文件的方法
- 08-05dedecms(織夢)副欄目數(shù)量限制代碼修改
- 01-11Mac OSX 打開原生自帶讀寫NTFS功能(圖文
- 01-10SublimeText編譯C開發(fā)環(huán)境設(shè)置
- 04-02jquery與jsp,用jquery
- 01-10使用C語言求解撲克牌的順子及n個骰子
- 08-05織夢dedecms什么時候用欄目交叉功能?
- 01-10C#中split用法實例總結(jié)
- 01-11ajax實現(xiàn)頁面的局部加載