簡體   English   中英

Tee命令Unix

[英]Tee command unix

我如何將所有這些服務准備到日志文件中:

stop service 1
stop service 2
stop service 3

我希望所有這些服務日志都保存到一個文件中

我應該使用:

stop service 1 | tee log1.log
stop service 2 | tee log1.log
stop service 3 | tee log1.log

要么:

stop service 1 
stop service 2 
stop service 3 | tee log1.log

我還沒有找到這樣的問題,謝謝!

tee接受-a標志以附加到文件。 因此,您應該能夠通過執行以下命令將所有三個命令的輸出重定向到單個文件:

stop service 1 | tee log1.log
stop service 2 | tee -a log1.log
stop service 3 | tee -a log1.log

(第一個命令將截斷任何現有文件)

不使用tee另一種方法是簡單地使用bash命令組,並將stdout重定向到日志文件:

{ stop service 1; stop service 2; stop service 3 } > log1.log

使用>>運算符附加到日志文件,或使用&>>運算符附加stdoutstderr 也可以使用bash子外殼代替:

( stop service 1; stop service 2; stop service 3 ) > log1.log
{
stop service 1
stop service 2
stop service 3
} 2>&1 | tee log1.log

這將通過單個重定向操作處理所有三個命令的輸出。 它還在日志文件中包括錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM