【问题标题】:Redirect the outputs and still see them when running a bash script重定向输出并在运行 bash 脚本时仍然可以看到它们
【发布时间】:2014-10-01 10:16:11
【问题描述】:

我的系统管理员创建了一个 bash 脚本,其中的第一个命令是重定向日志文件中的输出:

exec > my_app.log

有了这个,我有以下几点:

  • stdout 重定向到 my_app.log
  • stderr住在我的终端

当我手动执行脚本时,我想要以下所有内容:

  • stdout 重定向到 my_app.log
  • stderr 重定向到 my_app.err
  • stdout住在我的终端
  • stderr住在我的终端

我需要对 exec 进行什么更改才能让这一切发生?

目前我所做的是打开 3 个终端。

  • 使用./my_script.sh 2> my_app.err 运行脚本
  • 一个使用tail -f my_app.log
  • 一个使用tail -f my_app.err

我想太多了。

【问题讨论】:

标签: bash redirect exec


【解决方案1】:

看看下面的link,其中已经回答了这个问题。阅读tee 的手册页了解更多详情。

【讨论】:

  • 谢谢,它可以满足我的需求。
【解决方案2】:

回显"hello" | tee file.txt

echo "hello" 的输出放到文件和标准输出中

如果你需要标准错误和标准输出,那么echo "hello" 2>&1 | tee file.txt

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-18
    • 2011-02-14
    • 1970-01-01
    • 2014-11-17
    • 2010-11-28
    • 1970-01-01
    • 1970-01-01
    • 2020-03-22
    相关资源
    最近更新 更多