如何使用" tee"与"来源" Linux中的命令?

时间:2017-10-18 02:37:11

标签: linux bash shell sh tee

在Linux上我使用" tee "捕获" 来源"的输出命令并将其打印到输出日志文件,但失败了。我使用的命令是这样的:

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

my_run.sh 的目的是" make "一些编译工作,以及一些例行工作,如 cd rm svn 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 "将失败。 好像发球不喜欢制作。任何解决方案?

1 个答案:

答案 0 :(得分:1)

问题解决了;非常感谢@thatotherguy带领我找到解决方案。日志输出实际上已被 make clean 进程删除。修复 makefile 中的 clean 后,一切都很好。