學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 >

linux tee 命令使用教程介紹

時間: 加城1195 分享

  Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計思想,是一個性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。在執(zhí)行Linux命令時,我們既想把輸出保存到文件中,又想在屏幕上看到輸出內(nèi)容,那么可以用到tee命令,具體情況一起看看!

  tee具體介紹

  功能說明:讀取標(biāo)準(zhǔn)輸入的數(shù)據(jù),并將其內(nèi)容輸出成文件。

  語   法:tee [-ai][--help][--version][文件…]

  補(bǔ)充說明:tee指令會從標(biāo)準(zhǔn)輸入設(shè)備讀取數(shù)據(jù),將其內(nèi)容輸出到標(biāo)準(zhǔn)輸出設(shè)備,同時保存成文件。我們可利用tee把管道導(dǎo)入的數(shù)據(jù)存成文件,甚至一次保存數(shù)份文件。

  參   數(shù):-a 附加到既有文件的后面,而非覆蓋它。如果給予tee指令的文件名稱已經(jīng)存在,預(yù)設(shè)會覆蓋該文件的內(nèi)容。加上此參數(shù)后,數(shù)據(jù)會新增在該文件內(nèi)容的最后面,而不會刪除原先之內(nèi)容。

  -i 忽略中斷信號

  --help 在線幫助

  --version 顯示版本信息

  范   例:

  列出文本文件slayers.story的內(nèi)容,同時復(fù)制3份副本,文件名稱分別為ss-copy1、ss-copy2、ss-copy3:

  $ cat slayers.story |tee ss-copy1 ss-copy2 ss-copy3

  tee [-ai][--help][--version][文件...]

  【功能】

  tee以標(biāo)準(zhǔn)輸入作為輸入,標(biāo)準(zhǔn)輸出和文件作為輸出。

  【舉例】

  tee file //覆蓋

  tee -a file //追加

  tee - //輸出到標(biāo)準(zhǔn)輸出兩次

  tee - - //輸出到標(biāo)準(zhǔn)輸出三次

  tee file1 file2 - //輸出到標(biāo)準(zhǔn)輸出兩次,并寫到那兩個文件中

  ls | tee file

  另:把標(biāo)準(zhǔn)錯誤也被tee讀取

  ls "*" 2>&1 | tee ls.txt

  *用tee生成一個文件,包含你敲入的內(nèi)容:

  復(fù)制代碼代碼如下:

  $tee testfile

  這樣,會提示要你用標(biāo)準(zhǔn)輸入輸入內(nèi)容,然后敲回車會將你輸入的內(nèi)容寫入testfile和輸出到標(biāo)準(zhǔn)輸出,如果用[Ctrl]d結(jié)束輸入([Ctrl]c也行)。如果原來testfile有內(nèi)容,將會覆蓋。

  *把內(nèi)容追加到文件的末尾行:

  復(fù)制代碼代碼如下:

  $tee -a testfile

  結(jié)果類似上,不過如果原來testfile有內(nèi)容則不會覆蓋而是追加。

  *生成一個文件,敲入的時候,不接受中斷信號:

  復(fù)制代碼代碼如下:

  $tee -i testfile

  結(jié)果同testfile,不過不會接收中斷信號,只能用[Ctrl]d結(jié)束,而不能用[Ctrl]c了。

  *執(zhí)行l(wèi)s列出目錄文件同時將輸出保存到文件test中:

  復(fù)制代碼代碼如下:

  $ls | tee test

  這樣,會像平時一樣執(zhí)行l(wèi)s命令并將當(dāng)前目錄的文件名輸出到標(biāo)準(zhǔn)輸出。另外由于進(jìn)行了tee命令,所以會生成一個test文件,這個test文件的內(nèi)容和標(biāo)準(zhǔn)輸出的內(nèi)容一樣。

  【描述】

  tee指令會從標(biāo)準(zhǔn)輸入設(shè)備讀取數(shù)據(jù),將其內(nèi)容輸出到標(biāo)準(zhǔn)輸出設(shè)備,同時保存成文件。可以用于既想看到標(biāo)準(zhǔn)輸出,又想將標(biāo)準(zhǔn)輸出保存到文件中的情況。

  參數(shù):

  -a或--append  附加到既有文件的后面,而非覆蓋它.

  -i-i或--ignore-interrupts  忽略中斷信號。

  --help  在線幫助。

  --version  顯示版本信息。

  常用參數(shù)

  格式:tee

  只輸出到標(biāo)準(zhǔn)輸出,因為沒有指定文件嘛。

  格式:tee file

  輸出到標(biāo)準(zhǔn)輸出的同時,保存到文件file中。如果文件不存在,則創(chuàng)建;如果已經(jīng)存在,則覆蓋之。(If a file being written to does not already exist, it is created. If a file being written to already exists, the data it previously

  contained is overwritten unless the `-a' option is used.)

  格式:tee -a file

  輸出到標(biāo)準(zhǔn)輸出的同時,追加到文件file中。如果文件不存在,則創(chuàng)建;如果已經(jīng)存在,就在末尾追加內(nèi)容,而不是覆蓋。

  格式:tee -

  輸出到標(biāo)準(zhǔn)輸出兩次。(A FILE of `-' causes `tee' to send another copy of input to standard output, but this is typically not that useful as the copies are interleaved.)

  格式:tee file1 file2 -

  輸出到標(biāo)準(zhǔn)輸出兩次,同時保存到file1和file2中。

  使用示例補(bǔ)充:

  示例一 tee命令與重定向的對比

  [root@web ~]# seq 5 >1.txt

  [root@web ~]# cat 1.txt

  1

  2

  3

  4

  5

  [root@web ~]# cat 1.txt >2.txt

  [root@web ~]# cat 1.txt | tee 3.txt

  [root@web ~]# cat 2.txt

  [root@web ~]# cat 3.txt

  [root@web ~]# cat 1.txt >>2.txt

  [root@web ~]# cat 1.txt | tee -a 3.txt

  [root@web ~]# cat 2.txt

  [root@web ~]# cat 3.txt

  [root@web ~]#

  示例二 使用tee命令重復(fù)輸出字符串

  [root@web ~]# echo 12345 | tee

  12345

  [root@web ~]# echo 12345 | tee -

  12345

  12345

  [root@web ~]# echo 12345 | tee - -

  12345

  12345

  12345

  [root@web ~]# echo 12345 | tee - - -

  12345

  12345

  12345

  12345

  [root@web ~]# echo 12345 | tee - - - -

  12345

  12345

  12345

  12345

  12345

  [root@web ~]#

  [root@web ~]# echo -n 12345 | tee

  12345[root@web ~]# echo -n 12345 | tee -

  1234512345[root@web ~]# echo -n 12345 | tee - -

  123451234512345[root@web ~]# echo -n 12345 | tee - - -

  12345123451234512345[root@web ~]# echo -n 12345 | tee - - - -

  1234512345123451234512345[root@web ~]#

  示例三 使用tee命令把標(biāo)準(zhǔn)錯誤輸出也保存到文件

  [root@web ~]# ls "*"

  ls: *: 沒有那個文件或目錄

  [root@web ~]# ls "*" | tee -

  ls: *: 沒有那個文件或目錄

  [root@web ~]# ls "*" | tee ls.txt

  ls: *: 沒有那個文件或目錄

  [root@web ~]# cat ls.txt

  [root@web ~]# ls "*" 2>&1 | tee ls.txt

  ls: *: 沒有那個文件或目錄

  [root@web ~]# cat ls.txt

  ls: *: 沒有那個文件或目錄

  [root@web ~]#

  補(bǔ)充:Linux基本命令

  1.ls命令:

  格式::ls [選項] [目錄或文件]

  功能:對于目錄,列出該目錄下的所有子目錄與文件;對于文件,列出文件名以及其他信息。

  常用選項:

  -a :列出目錄下的所有文件,包括以 . 開頭的隱含文件。

  -d :將目錄像文件一樣顯示,而不是顯示其他文件。

  -i :輸出文件的i節(jié)點的索引信息。

  -k :以k字節(jié)的形式表示文件的大小。

  -l :列出文件的詳細(xì)信息。

  -n :用數(shù)字的UID,GID代替名稱。

  -F : 在每個文件名后面附上一個字符以說明該文件的類型,“*”表示可執(zhí)行的普通文 件;“/”表示目錄;“@”表示符號鏈接;“l”表示FIFOS;“=”表示套接字。

  2.cd命令

  格式:cd [目錄名稱]

  常用選項:

  cd .. 返回上一級目錄。

  cd ../.. 將當(dāng)前目錄向上移動兩級。

  cd - 返回最近訪問目錄。

  3.pwd命令

  格式: pwd

  功能:顯示出當(dāng)前工作目錄的絕對路徑。

  相關(guān)閱讀:Linux主要特性

  完全兼容POSIX1.0標(biāo)準(zhǔn)

  這使得可以在Linux下通過相應(yīng)的模擬器運行常見的DOS、Windows的程序。這為用戶從Windows轉(zhuǎn)到Linux奠定了基礎(chǔ)。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程序是否能正常運行,這一點就消除了他們的疑慮。

  多用戶、多任務(wù)

  Linux支持多用戶,各個用戶對于自己的文件設(shè)備有自己特殊的權(quán)利,保證了各用戶之間互不影響。多任務(wù)則是現(xiàn)在電腦最主要的一個特點,Linux可以使多個程序同時并獨立地運行。

  良好的界面

  Linux同時具有字符界面和圖形界面。在字符界面用戶可以通過鍵盤輸入相應(yīng)的指令來進(jìn)行操作。它同時也提供了類似Windows圖形界面的X-Window系統(tǒng),用戶可以使用鼠標(biāo)對其進(jìn)行操作。在X-Window環(huán)境中就和在Windows中相似,可以說是一個Linux版的Windows。

  支持多種平臺

  Linux可以運行在多種硬件平臺上,如具有x86、680x0、SPARC、Alpha等處理器的平臺。此外Linux還是一種嵌入式操作系統(tǒng),可以運行在掌上電腦、機(jī)頂盒或游戲機(jī)上。2001年1月份發(fā)布的Linux 2.4版內(nèi)核已經(jīng)能夠完全支持Intel 64位芯片架構(gòu)。同時Linux也支持多處理器技術(shù)。多個處理器同時工作,使系統(tǒng)性能大大提高。


linux tee 命令使用相關(guān)文章:

1.linux tee 命令使用詳解教程

2.linux常用命令面試題

3.Linux系統(tǒng)中tee命令怎么用

4.linux系統(tǒng)設(shè)置命令別名的方法

5.linux tee命令使用詳解教程

4018985