3

我得到一个看起来像这样的文件:

G:\some_folder
    file1.avi
    file2.wav
E:\some_folder2
    fileABC.avi
    fileDEF.wav

我想将文件传输到:

G:\some_folder
G:\some_folder  file1.avi
G:\some_folder  file2.wav
E:\some_folder2
E:\some_folder2 fileABC.avi
E:\some_folder2 fileDEF.wav

所以换句话说,这可能像这样工作:查找^[A-Z]:复制整行并将其添加到下一行的开头,直到找到^[A-Z]:

可以在 VIM 中做到这一点吗?如果是,如何。

谢谢拉德克

4

1 回答 1

7

:global我会用;遍历所有行 Vim 会将光标定位在每一行的开头。根据它是哪种行,我要么拉文件夹路径,要么将其粘贴在前面:

:%g/^/execute 'normal!' getline('.') =~ '^\S' ? 'y$' : 'P'
于 2013-05-17T08:35:23.510 回答