作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 bash 脚本中,我使用以下语法命令打印从脚本到文件的所有内容 - $file
和 $sec_file
我们在 Linux rhel 服务器上运行脚本 - 版本 7.8
exec > >(tee -a "$file" >>"$sec_file") 2>&1
所以在 bash 脚本完成后,我们在两个文件中都得到了
stdout/stderr
的内容bash 脚本中的每一行
stdout/stderr
不仅是文件
# more /tmp/script.bash
#!/bin/bash
file=/tmp/file.txt
sec_file=/tmp/sec_file.txt
exec > >(tee -a "$file" >>"$sec_file") 2>&1
echo "hello world , we are very happy to stay here "
示例如何运行脚本:
/tmp/script.bash
<-- no output from the script -->
# more /tmp/file.txt
hello world , we are very happy to stay here
# more /tmp/sec_file.txt
hello world , we are very happy to stay here
应如下所示的预期输出示例
/tmp/script.bash
hello world , we are very happy to stay here
和
# more /tmp/file.txt
hello world , we are very happy to stay here
# more /tmp/sec_file.txt
hello world , we are very happy to stay here
最佳答案
我认为,最简单的方法是将多个文件作为参数添加到 tee
像这样:
% python3 -c 'import sys; print("to stdout"); print("to stderr", file=sys.stderr)' 2>&1 | tee -a /tmp/file.txt /tmp/file_sec.txt
to stdout
to stderr
% cat /tmp/file.txt
to stdout
to stderr
% cat /tmp/file_sec.txt
to stdout
to stderr
您的脚本将如下所示:
#!/bin/bash
file=/tmp/file.txt
sec_file=/tmp/sec_file.txt
exec > >(tee -a "$file" "$sec_file") 2>&1
echo "hello world , we are very happy to stay here "
关于bash - 如何将 shell 脚本 stdout/stderr 打印到文件/s 和控制台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63297676/
我是一名优秀的程序员,十分优秀!