Bash Tee 命令

MD Aminul Islam 2023年1月30日
  1. Bash 中的 tee 命令
  2. 在 Bash 中使用 tee 命令寫入多個檔案
  3. 在 Bash 中使用 tee 命令附加檔案
  4. 在 Bash 中使用 tee 命令忽略中斷
  5. 在 Bash 中使用 tee 命令隱藏輸出
Bash Tee 命令

Bash 中有一個名為 tee 的特殊命令,它可以從標準輸入讀取並以標準格式將輸出寫入一個或多個檔案。它還通過管道與其他命令一起使用。

本文將詳細介紹 tee 命令。此外,我們將檢視一些示例和解釋,以使它們更易於理解。

Bash 中的 tee 命令

tee 命令的一般語法是 tee YOUR_OPTIONS YOUR_FILE_NAME。此命令的可用選項是:

  1. -a - 也稱為 --append,告訴命令不要覆蓋檔案並附加到提供的檔案。
  2. -i - 也稱為 --ignore 中斷,用於忽略中斷訊號。

下面分享了一個 tee 命令的基本示例。

df -H | tee disk_usage.txt

在上面共享的示例中,我們只執行 tee disk_usage.txt 檔案。執行示例程式碼後,你將獲得以下輸出。

Filesystem      Size  Used Avail Use% Mounted on
rootfs          198G  120G   79G  61% /
none            198G  120G   79G  61% /dev
none            198G  120G   79G  61% /run
none            198G  120G   79G  61% /run/lock
none            198G  120G   79G  61% /run/shm
none            198G  120G   79G  61% /run/user
tmpfs           198G  120G   79G  61% /sys/fs/cgroup
C:\             198G  120G   79G  61% /mnt/c
E:\             178G   26G  153G  15% /mnt/e
F:\             278G  152G  127G  55% /mnt/f
G:\             278G   17G  262G   6% /mnt/g

在 Bash 中使用 tee 命令寫入多個檔案

你還可以使用 tee 命令寫入多個檔案。為此,你可以按照以下示例進行操作。

command | tee file1.txt file2.txt file3.txt

在上面共享的示例中,我們編寫了三個名為 file1.txtfile2.txtfile3.txt 的檔案。

在 Bash 中使用 tee 命令附加檔案

命令 tee 還使我們能夠附加檔案。為此,你可以按照以下命令進行操作。

command | tee -a file.txt

正如我們已經討論過的,-a 標誌表示附加操作。

在 Bash 中使用 tee 命令忽略中斷

你可以按照下面共享的程式碼忽略命令執行中不必要的中斷。

command | tee -I file.txt

在執行期間通過 Ctrl+C 停止命令時非常有用。

在 Bash 中使用 tee 命令隱藏輸出

不想 tee 在標準模式下寫輸出?只需將其重定向到 /dev/null 並按照以下命令進行操作。

command | tee file.txt >/dev/null

本文中使用的所有程式碼都是用 Bash 編寫的。它只能在 Linux Shell 環境中執行。

作者: MD Aminul Islam
MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn