tee

從標準輸入讀取數據並重定向到標準輸出和文件。

概要

1tee [OPTION]... [FILE]...

主要用途

  • 需要同時查看數據內容並輸出到文件時使用。

參數

FILE(可選):要輸出的文件,可以爲一或多個。

選項

 1長選項與短選項等價
 2
 3-a, --append               追加到文件中而不是覆蓋。
 4-i, --ignore-interrupts    忽略中斷信號(Ctrl+c中斷操作無效)。
 5-p                         診斷寫入非管道的錯誤。
 6--output-error[=MODE]      設置寫錯誤時的行爲,請查看下方的MODE部分。
 7--help                     顯示幫助信息並退出。
 8--version                  顯示版本信息並退出。
 9
10MODE決定了當出現寫錯誤時的輸出行爲,可用的MODE如下:
11
12'warn'           當寫入到任何輸出報錯時診斷。
13'warn-nopipe'    當寫入到任何輸出(而不是管道)報錯時診斷。
14'exit'           當寫入到任何輸出報錯時退出。
15'exit-nopipe'    當寫入到任何輸出(而不是管道)報錯時退出。
16
17-p選項的指定的默認MODE爲'warn-nopipe'18'--output-error'沒有在選項中時,默認的操作是當寫入到管道報錯時立刻退出,診斷錯誤信息並寫入到非管道輸出。

返回值

返回狀態爲成功除非給出了非法選項或非法參數。

例子

1# 將進程信息通過管道輸出到標準輸出(終端)並覆蓋寫入到文件中。
2ps -ef |tee info_a.log info_b.log
3
4# 將進程信息通過管道輸出到標準輸出(終端)並追加寫入到文件中。
5ps -ef |tee -a info_a.log info_b.log

注意

  1. 該命令是GNU coreutils包中的命令,相關的幫助信息請查看man -s 1 teeinfo coreutils 'tee invocation'
  2. 存在緩存機制,每1024個字節將輸出一次。若從管道接收輸入數據,應該是緩衝區滿,纔將數據轉存到指定的文件中。若文件內容不到1024個字節,則接收從標準輸入設備讀入的數據後,將刷新一次緩衝區,並轉存數據到指定文件。

來源:https://github.com/jaywcjlove/linux-command

最後修改於: Wednesday, January 31, 2024

相關文章:

翻譯: