bash:获取最后一个标准输出

Ema*_*erg 5 bash

可能的重复:
如何重用命令行的最后一个输出?

如果我例如输入

aptitude search dia
Run Code Online (Sandbox Code Playgroud)

我得到了很多不相关的东西。那时,我怀疑| head| grep -w dia会简化结果(如果我想过的话)。我可以输入!! | head!! | grep -w dia但然后重新执行搜索。但这是不必要的;我对那部分已经很满意了。那么,有没有办法做喜欢,most_recent_stdout | whatever

(请注意,这只是一个例子,所以我不是在寻找 aptitude 选项或类似的东西。)

Lar*_*off 8

要完成这项工作,您需要重定向stdout到一个文件,然后对该文件进行分类。Bash 不会自行保存命令的输出。

或者,您可以使用类似的程序screen将会话记录保存到文件中。不过,您将获得所有内容和命令行的输出。

  • 您当然可以通过 hack bash 来实现这一点,但我强烈建议您不要这样做。首先,它会用这些文件乱扔你的文件系统,可能会覆盖其他文件。此外,您将无法将输出重定向到另一个文件。 (2认同)