如何在xterm中启用日志记录

时间:2018-02-13 04:09:11

标签: c linux logging xterm

是否可以在xterm中默认打开日志记录功能?

让我们举个例子说,我在c中有一个示例程序,每当我从linux中的默认bash终端运行程序时,它就会在xterm中输出。我想在每次运行程序时将xterm中显示的输出保存到文件中。

我正在使用centos7_x86_64 fyi 感谢。

3 个答案:

答案 0 :(得分:1)

在Windowmaker中:

在xterm窗口中(在终端文本上)按住 Ctrl +左键单击,然后单击“ 登录到文件”。

一个很酷的事情是在编写代码时,记录终端,然后在记录Xterm日志时,看到快速前进的编码。如果您愿意,可以录制视频。

请注意,xterm中还有其他菜单,可使用Ctrl +左键单击,Ctrl +中键,Ctrl +右键单击来访问。

日志文件将位于您启动Xterm的目录中,其格式为:Xterm.log.<hostname>.<date>.<time>.log

这是一个非常好的问题,没有理由对这样的问题进行评分。

答案 1 :(得分:0)

可以通过两种方式完成:

  1. 使用script

    xterm -e script mylogfile -c "someCommand -i input_file -o output_file -f someArg"
    
  2. 重定向到文件:

    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