在 Vista 中将目录内容移动到另一个目录的命令行方式是什么?

Tom*_*idd 3 windows windows-vista file-management

我通常喜欢 Vista,但我发现它的文件移动设施很糟糕。

我有这两个目录

C:\dir1\
C:\dir2\
Run Code Online (Sandbox Code Playgroud)

它们都包含许多子目录,这些子目录本身包含文件和子目录等。并且它们基本上都是相同的结构,但是文件的内容不同。

我想要做的是获取 的所有子目录C:\dir1\并将它们移动到C:\dir2\,覆盖C:\dir1\.

如果我通过在 Windows 资源管理器中拖动来执行此操作 - 它只是不起作用。它询问我是否确定要合并,但之后它什么也不做。

如果我一次执行一个目录,有时它会起作用,有时则不起作用。当它起作用时,它会将原始目录留在原处,为空,这无害但很奇怪。

什么是好的、自动的、最好是命令行的方式来说“将这个目录的内容移动到这个目录的内容上,是的,我是认真的,是的,覆盖所有的内容,不,不要再问我任何问题,句号”?

另外请告诉我 Windows 7 是否修复了这个垃圾。

Kez*_*Kez 8

xcopy c:\dir1 c:\dir2 /E /H /R /X /Y /I /K

诀窍。

适用于 Vista 和 7 的命令行。

有关信息,这是开关在此命令中的作用:

  • /E 复制目录和子目录,包括空目录。
  • /H 也复制隐藏文件和系统文件。
  • /R 覆盖只读文件。
  • /X 复制文件审核设置(隐含 /O)。
  • /Y 禁止确认您要覆盖现有目标文件的提示。
  • /I 如果目标不存在并且复制多个文件,则假定目标必须是一个目录。
  • /K 复制属性。普通 Xcopy 将重置只读属性。

您可以通过键入xcopy /? 在命令行。

如果您想完成“移动”,只需使用rd c:\dir1 /S /Q删除 c:\dir1

可能值得使用记事本将这两个命令粘贴在批处理文件(末尾为 .cmd 或 .bat 的文本文件)中。然后您只需双击快捷方式。