Caching 缓存最后几个shell运行命令sans';脚本';?

Caching 缓存最后几个shell运行命令sans';脚本';?,caching,shell,Caching,Shell,我可以缓存从tcsh运行的最后几个命令的输出吗?注: 我经常从tcsh运行一个缓慢而冗长的命令,忘记 重定向/T输出,并将结果从 屏幕我考虑过的解决方案: 运行“脚本”中的所有内容。这似乎太过分了,因为 它保存了所有内容的输出,而不仅仅是最后几个 命令。我想您可以巧妙地旋转脚本输出文件 不知怎么的,但这看起来很难看 Screen/rxvt/xterm回滚。这实际上效果相当不错, 除非输出量很大(通常如此) 再次运行该命令。显然,这就是我希望的 避免(不过,由于文件系统缓存的缘故,重新运行通常

我可以缓存从tcsh运行的最后几个命令的输出吗?注:

  • 我经常从tcsh运行一个缓慢而冗长的命令,忘记 重定向/T输出,并将结果从 屏幕我考虑过的解决方案:

    • 运行“脚本”中的所有内容。这似乎太过分了,因为 它保存了所有内容的输出,而不仅仅是最后几个 命令。我想您可以巧妙地旋转脚本输出文件 不知怎么的,但这看起来很难看

    • Screen/rxvt/xterm回滚。这实际上效果相当不错, 除非输出量很大(通常如此)

    • 再次运行该命令。显然,这就是我希望的 避免(不过,由于文件系统缓存的缘故,重新运行通常是错误的) 比第一次跑步更快)

    • 别再傻了。没有任何希望

编辑:一个想法:我能让tcsh对所有东西都运行“post命令”吗 我打字吗?例如,如果我说“ls”,它会秘密运行“ls | tee” /“tmp/lastout.txt”还是什么?是否有一些setenv变量
是这样吗

我认为最好的解决方案是增加
屏幕中的滚动缓冲区的大小(默认为100行)

或者在
~/.screenrc
中:

defscrollback 1000

事实上,我已经这样做了(但忘了提及)。滚动输出通常为10K+行。我曾经尝试过“回滚1000000”(在~/.screenrc中),但是屏幕的内存使用量太大了。@barry:很抱歉这么说,但是如果你说的是10000行,那么我认为你应该集中精力回答问题的最后一点。我不是故意苛刻,但这是我为自己做的事情。重定向和
tee
是你的朋友,就像过滤你的输出那样,你只需要查看摘要或异常。公平地说,我经常做tee输出结果,特别是当我知道会有10K+行时。通常最糟糕的情况是,我只希望有几行输出,但结果是w/10K+。
defscrollback 1000