簡體   English   中英

如何在 Linux 中使用“tee”和“source”命令?

[英]How to use "tee" with "source" command in Linux?

在 Linux 上,我使用“ tee ”來捕獲“ source ”命令的輸出並將其打印到輸出日志文件,但失敗了。 我使用的命令是這樣的:

source ./my_run.sh 2>&1 | tee -i my_run_log

my_run.sh的目的是“制作”一些編譯作業,以及一些常規作業,如cdrmsvn update my_run.sh的內容如下:

  make clean
  cd ..
  rm ./xxx
  svn up -r 166
  cd ./aaa/
  sed -i -e ......
  make compile
  make run

但是,當我運行它時,“ tee ”不起作用,根本不給我日志文件。 為了驗證整個環境是否良好,我做了一個更簡單的測試:

ll 2>&1 | tee -i log

在這個更簡單的場景中,“ tee ”工作得非常好,並按我的預期打印出“log”。 誰能幫我找出我的問題在哪里? 順便說一句,我正在使用bash shell開發Red Hat Linux (5.9 版)。 提前致謝!

更多評論:我做了更多測試,發現只要my_run.sh腳本中有“ make xxx ”的東西,那么“ tee ”就會失敗。 似乎 T 恤不喜歡 make。 任何解決方案?

問題解決了; 非常感謝@thatotherguy 帶領我找到解決方案。 日志輸出實際上被make clean過程刪除了。 makefile 中修復干凈的東西后,一切都很好。

暫無
暫無

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

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