返回上次运行shell命令的shell输出

时间:2015-06-10 11:40:04

标签: shell vim

我运行我的测试文件:

:!bundle exec rspec my_file_spec.rb

当我运行该命令时,它会在另一个窗口中显示我的测试结果,然后我按“按ENTER或键入命令继续”返回到vim。这一切都有效。

我想做的是,一旦我离开它,就回到之前的输出。那可能吗?

我没有在缓冲区列表中看到它,我真的不需要将输出保存在单独的窗口/拆分中。

1 个答案:

答案 0 :(得分:2)

:!命令的输出直接打印到终端(或GVIM的内置仿真器);它已保存。为此,您可以使用tee重定向到外部文件:

:!bundle exec rspec my_file_spec.rb | tee a.out
:split a.out

或者,您可以在命令的输出中直接打开暂存缓冲区:read

:new +setl\ buftype=nofile | 0read !bundle exec rspec my_file_spec.rb

这样做的缺点是,只有在外部命令结束后才能看到输出。

相关问题