当前的工作目录是./A/B/。键入vim时将打开一个空文档,并使用命令:e.打开netrw。窗口由vs.分割,我可以导航到上一级目录,即./A/。现在我想将文件a_file.jpg./A/B/复制到./A/

我在目标文件上尝试了yy,在目标窗口(目录)中尝试了p,但没有达到我的目标。 />
有什么方法可以在不安装额外插件的情况下实现目标?

评论

请尝试以下操作:在要在其中复制文件的目标目录上打mt(以标记它;该文件夹的路径应在“复制/移动Tgt:”之后出现在标题中),在要复制的文件上按mf想要复制以将其标记为好,然后按mc以实际执行复制。

#1 楼

您不能使用yp等在netrw中复制文件-它带有自己的命令。请参见:h netrw-mc

MARKED FILES: COPYING                                           netrw-mc {{{2
            (See netrw-mf and netrw-mr for how to mark files)
                      (Uses the global marked file list)

Select a target directory with mt (netrw-mt).  Then change directory,
select file(s) (see netrw-mf), and press "mc".  The copy is done
from the current window (where one does the mf) to the target.

If one does not have a target directory set with netrw-mt, then netrw
will query you for a directory to copy to.

One may also copy directories and their contents (local only) to a target
directory.


由于./A./A/B的父级,所以您的情况得到了简化:打开


打开./A/B,移至具有../的行,
mt标记它

移动到要复制文件的行。
mf,然后按mc

示例:

$ tree foo
foo
└── bar
    └── test

1 directory, 1 file
$ vim foo/bar


现在:



移动到..并按mt




标题将更改为显示当前目标:




移至文件(在此处为test),然后按mf。它为我突出显示:




mc-突出显示消失了。现在导航到父文件夹-该文件应该存在:





#2 楼

我将从命令行模式执行此操作:


在netrw中选择所需的文件
在命令行中打开并键入-:!mv <C-R><C-F> ../<C-R><C-F>


<C-R><C-F>在光标下插入文件名,因此您不必键入文件名。

评论


很酷。如果您在netrw中遍历了树,则不包括完整路径...

– J0hnG4lt
16 Mar 8 '16 at 14:38

#3 楼


将光标置于
./(或要复制的目录)上
,按mt

将光标置于要复制的文件上,按mf,然后按mc ,输入新文件的名称enter



评论


我尝试使用g:netrw_localcopycmd 尝试(netrw);它不起作用!

–哈里·莫雷诺(Harry Moreno)
18年2月21日在18:13

osx解决方案stackoverflow.com/questions/31811335/…

–哈里·莫雷诺(Harry Moreno)
18年2月21日在18:20

@HarryMoreno它适用于我的OSX iTerm2

–itsnikolay
18年2月22日在7:37