我有一个运行a命令的应用程序如下:
<command> <switches> >& /dev/null
我可以配置<command>,但我无法控制<switches>.此命令生成的所有输出都将转到/dev/null.我希望输出在屏幕上可见或重定向到日志文件.
我试图使用freopen()和相关的函数重新打开/dev/null到另一个文件,但无法使其工作.
你还有其他建议吗?这有可能吗?
谢谢你的时间.
PS:我在Linux上工作.
可怕的黑客:
在二进制模式下使用文本编辑器打开应用程序,找到'/ dev/null /'并用相同长度的字符串替换它
e.g '~/tmp/log'
Run Code Online (Sandbox Code Playgroud)
由于您可以修改运行的命令,因此可以使用简单的 shell 脚本作为包装器将输出重定向到文件。
#!/bin/bash
"$@" >> logfile
Run Code Online (Sandbox Code Playgroud)
如果将其保存在路径中作为 capture_output.sh,则可以将 capture_output.sh 添加到命令的开头,以将程序的输出附加到日志文件。
| 归档时间: |
|
| 查看次数: |
3500 次 |
| 最近记录: |