是否可以在xterm中默认打开日志记录功能?
让我们举个例子说,我在c中有一个示例程序,每当我从linux中的默认bash终端运行程序时,它就会在xterm中输出。我想在每次运行程序时将xterm中显示的输出保存到文件中。
我正在使用centos7_x86_64 fyi 感谢。
答案 0 :(得分:1)
在Windowmaker中:
在xterm窗口中(在终端文本上)按住 Ctrl +左键单击,然后单击“ 登录到文件”。
一个很酷的事情是在编写代码时,记录终端,然后在记录Xterm日志时,看到快速前进的编码。如果您愿意,可以录制视频。
请注意,xterm中还有其他菜单,可使用Ctrl +左键单击,Ctrl +中键,Ctrl +右键单击来访问。
日志文件将位于您启动Xterm的目录中,其格式为:Xterm.log.<hostname>.<date>.<time>.log
。
这是一个非常好的问题,没有理由对这样的问题进行评分。
答案 1 :(得分:0)
可以通过两种方式完成:
使用script
:
xterm -e script mylogfile -c "someCommand -i input_file -o output_file -f someArg"
重定向到文件:
xterm -e 'someCommand --arguments 2>&1> /path/to/mylogfile'
答案 2 :(得分:0)
我基本上用“终端窗口”,mrxvt,“hcm”和“pypty”来做这个。
终端窗口包装mrxvt,只需填写一些命令行选项。 mrxvt是一个轻量级的,多重的,非单一的终端模拟器,与xterm不同。
hcm是一个GUI,可以在远程主机上轻松运行shell(或其他命令)。如果您愿意,它也可以使用远程ssh启动mrxvt而不需要GUI(使用hcm-term)。
pypty是一个用Python编写的/ usr / bin / script重新实现。它与/ usr / bin / script没有太大的区别,除了它提供了“日期文件模式”,它允许你每天每个伪终端有一个文件。因此,如果您在一夜之间留下一个shell,那么每天会收到一个文件 - 这样可以更容易地找到您要查找的内容。
所有这些结合起来可以非常轻松地为您提供伪终端日志记录。命令在远程主机上运行,但在本地记录。只需启动一个“花哨的终端窗口”(或使用hcm-term),你在屏幕上看到的所有内容以及控制字符(但不是非交换密码)都将被记录在〜/ .hcm / logs /&lt; year&gt; /&lt ;月&gt; /&lt; day&gt; / *。
另外,如果你点击mrxvt右下角的shell按钮,你会在同一个远程主机上获得另一个ssh会话,该主机也会在本地记录(到〜/ .hcm / logs /下的另一个文件) )。当我开始使用该功能时,我不知道自己会变得多么喜欢它。
你可以从http://stromberg.dnsalias.org/~strombrg/hcm/获取它们。那里有一个视频,展示了设置和开始使用它是多么容易。
BTW,花哨的终端窗口设置$ PS0或“陷阱DEBUG”为您提供命令开始时间和结束时间。这对于验尸来说非常棒。它不会替换任何常用的bash启动文件。
我写了终端窗口,hcm和pypty,但我不能把它归功于mrxvt。 :)
HTH