如何 vimgrep 交换目录中的文件

如何 vimgrep 交换目录中的文件

我不小心关闭了一个打开了一些 vim 选项卡的终端窗口。

现在我如何使用vimgrep或终端找到这些交换文件grep

答案1

Vim 默认将交换文件保存在与你正在编辑的文件相同的目录中。你应该去那里看看。

如果您在自己的.vimrc(或下载了其他人的)中更改了它,则应仔细检查以查看它们是否保存在其他地方。选项将类似于set dir=~/.vim/swap

一旦确定了交换文件可能位于何处,我们就应该着手恢复它们。在 *nix 系统上,它们是隐藏文件(以 开头.),而在 DOS 系统(Windows)上,它可能以 = 开头(但可能不是隐藏的)。

因此,在 *nix 系统上,您要查找的文件将类似于myfile.swX,其中myfile是您丢失的文件的名称,并且X可能是之后的任何字母p(vim 重命名交换文件而不是删除它们)。

一旦找到文件,要恢复它,请打开 Vim,然后运行:recover myfile.swp

祝你好运,希望你能找到你的文件!

答案2

你不需grep要这样做,因为 Vim 交换文件已经可以通过其文件扩展名find.从包含所有打开的 Vim 文件的基本目录或您配置的目录开始搜索:set directory=...

$ find . -name '.*.swp'

PS:由于:vimgrep在 Vim 本身中打开文件,它可能无法处理自己的交换文件。

相关内容