簡體   English   中英

grep 如何將兩個單獨的日志文件分開? , 目前 output 到只有一個日志文件

[英]How to grep two separate logs file? , currently output to only one log file

我有以下命令到 output shell 腳本到文件RestartLog.log ,然后到 grep 只有“錯誤”到另一個文件RestartLog_log

 sudo  ./DailyRestart.sh |sudo tee  /RestartLog.log |grep ERROR | sudo tee /RestartLog_ERROR.log

我有兩個問題

  • 問題1:我需要為“警告”和“錯誤”添加另一個文件“RestartLog_WARNING.log” ,是否可以

  • 問題 2:當前錯誤輸出僅打印到控制台,我需要完整的 output 到控制台而不是錯誤 output

請幫助我解決這兩個問題

只有 STDOUT 通過您的管道。 如果您還需要 STDERR,則需要先將其重定向到 STDOUT:

sudo  ./DailyRestart.sh 2>&1 | ...

Awk 可能是一個更好的選擇:

./DailyRestart.sh | awk '/Warning/ { print $0 >> "RestartLog_WARNING.log" } /ERROR/ { print $0 >> "RestartLog_ERROR.log" }1' 

搜索包含“警告”的行並將該行打印到文件 RestartLog_WARNING.log。 搜索包含“ERROR”的行並將該行打印到文件 RestartLog_ERROR.log。 使用 1 將所有行打印到屏幕上。

暫無
暫無

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

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