FJC*_*FJC 9 command-line io-redirection stdout
我在 C++ 代码 (prog2) 上运行内存检查工具 (prog1),这两者都给了我一个巨大而详细的输出。为了解决一些错误,我需要将此输出保存到文件中。
我尝试将标准输出重定向到一个文件:
prog1 prog2 > outfile.txt
Run Code Online (Sandbox Code Playgroud)
但这给了我一个包含 prog2 输出的文件,而 prog1 的输出仍然到终端。
任何人都知道一种指定我希望两个输出都转到文件的方法吗?喜欢(prog1 prog2) > outfile.txt?
Ste*_*itt 18
很有可能prog1将其输出写入标准错误。您可以将两个输出重定向到一个文件
prog1 prog2 > outfile.txt 2>&1
Run Code Online (Sandbox Code Playgroud)
或者你可以分割输出
prog1 prog2 > outfile.txt 2> errors.txt
Run Code Online (Sandbox Code Playgroud)
这不会分离单个程序的输出,而是分离输出通道。请参阅shell 的控制和重定向运算符是什么?详情。
如果您查看prog1的文档,您可能会找到一个选项,告诉它改为将其输出存储在命名文件中。例如,对于strace,
strace -o strace.txt prog2 > outfile.txt
Run Code Online (Sandbox Code Playgroud)
会将strace输出存储strace.txt在outfile.txt.
| 归档时间: |
|
| 查看次数: |
715 次 |
| 最近记录: |