Robocopy 复制当前文件夹的内容。

17

你如何将这个xcopy命令翻译成Robocopy:

xcopy *.* "C:\DestinationFolder\"

记住当前运行命令的文件夹会动态变化(因此源文件夹事先未知)。

谢谢。

3个回答

23

robocopy . "c:\dest"

注意,你不需要在 robocopy 命令中指定通配符,默认会复制所有文件,除非你使用 /xf 或 /xd 标志来排除某些文件。


3
这应该放在c:\windows\system32而不是当前文件夹(至少在我的Windows 7电脑上)。 - under

4

Robocopy支持通配符。

您可能期望使用命令 > robocopy SOURCE DEST,但是可以使用命令 > robocopy *.txt c:\folderdest\ 来复制当前文件夹。如果查看robocopy的输出结果,它将显示 "Files : *.txt" 和 "Source = c:\folderdest"。

因此,实际上您可以使用命令 > robocopy WILDCARD SOURCE DEST。如果要使用当前文件夹,则需要使用.(正如在此处提到的)。因此,您可以使用命令> robocopy *.txt . c:\folderdest\

截图: http://i.stack.imgur.com/Xyxt4.png


2
作为补充: 如果从管理员控制台启动 robocopy,当前文件夹“.”会指向 Windows\system32。
您可以在批处理文件顶部使用以下命令来解决此问题:
@setlocal enableextensions  
@cd /d "%~dp0"

这对于本地路径非常有效,但不支持UNC路径。但至少它会失败并显示一个明确的消息 - 而不是没有这些行的选项,它只是静默地使用Windows路径。 - I'm with Monica

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接