我在屏幕上使用Vim。我运行命令
vim <bigFolder>
我陷入困境,因为通过以下方法关闭每个缓冲区没有意义
:q
如何通过Vim中的一个命令关闭Vim中的所有活动缓冲区?
我在屏幕上使用Vim。我运行命令
vim <bigFolder>
我陷入困境,因为通过以下方法关闭每个缓冲区没有意义
:q
如何通过Vim中的一个命令关闭Vim中的所有活动缓冲区?
Answers:
:qall
或:qa
将关闭所有窗口
该:bufdo
命令使您可以在所有缓冲区上执行命令。在这种情况下,您要运行一次:bufdo bdelete
关闭所有打开的缓冲区。
:on
将关闭除当前正在编辑的缓冲区以外的所有缓冲区(光标位于该缓冲区内)。
:on!
也将关闭修改后的缓冲区,但这些将变为隐藏缓冲区。
:ls
将列出所有缓冲区及其状态(隐藏,...)
一些帮助:
:h only
:h hidden-buffer
:h ls
这并非您所要求的,但是以下内容可能会提供理想的结果。它:
:tabo
):only
)1 b
)中删除编号为2到2000(2,2000bd
)的缓冲区
:tabo | :only | 1 b | 2,2000 bd
如果打开的缓冲区超过2000个,请进行相应的调整。
您只需删除所有缓冲区,即可1,2000bd
完成此工作,但请注意,将为所有打开的选项卡和窗口创建新的空缓冲区。
如果碰巧使VIM完全卡住,您仍然应该可以从VIM外部将其杀死。
kill %vim
ps
。你可以杀死它:$ ps -f -C vim
UID PID PPID C STIME TTY TIME CMD
nfellman 27273 7473 0 Jun24 pts/15 00:00:00 /nfs/iil/home/nfellman/vim/bin/vim a.pl
nfellman 37213 23747 0 Jun23 pts/15 00:00:00 /nfs/iil/home/nfellman/vim/bin/vim b.pl
因此,如果我想终止正在编辑的VIM,a.pl
可以执行以下操作:
kill -9 27273
即使在屏幕内也可以使用