如何在执行已编译的 C 程序时生成终端?

如何在执行已编译的 C 程序时生成终端?

我已经重写了 gn​​ome-screenshot 程序以满足我的需求,以便从第二个自制显卡输出中获取屏幕截图,现在当我按下 PrintScreen 按钮时,它会执行该操作(如预期的那样)。但是,程序中有一些“printf”语句(用 C 编写),我希望能够将其视为输出。有什么办法可以做到这一点?也许通过在程序执行时生成终端?

运行:Red Hat Enterprise Linux Client 版本 5.8(Tikanga)

答案1

捕获输出的最简单方法是将 PrintScreen 命令包装在 shell 中,并将输出重定向到文件。例如,如果您的程序名为myprscr,则 shell 脚本可能是:

#!/bin/sh
myprscr 2>1 1>>/tmp/myprscr.log

然后让 PrintScreen 按钮运行该 shell 脚本而不是您的命令。您可能希望使用 的完整路径myprscr

相关内容