当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

作者:精品下载站 日期:2024-12-15 00:32:25 浏览:15 分类:玩电脑

21 个带有屏幕截图的 Robocopy 示例


正在寻找 robocopy 示例和有用命令的列表?那就别再看了。

Robocopy 有许多命令行选项,要知道要使用哪些命令可能会让人不知所措。在本指南中,我将向您展示最好的 robocopy 命令和示例。

让我们开始吧。

1. 测试文件副本而不进行任何实际更改

您可以使用 /l 命令测试文件副本。这是在不进行任何实际更改的情况下测试命令的好方法,它会向您展示它会做什么。

这是一个例子。

robocopy c:\share c:\it\dst  /l

您可以在下面看到此命令将复制一个目录。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

我将运行另一个测试并包含 /e 选项。

robocopy c:\share c:\it\dst  /e /l

这次测试表明它会复制一堆文件和目录。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

/l 是一个很好的命令,可以帮助您了解它在不进行任何实际更改的情况下会做什么。

2.复制内容排除空子目录

在此示例中,我要将所有文件和文件夹从 c:\share 复制到同一台计算机上的文件夹 c:\it\dst。这将排除任何空子目录。

robocopy c:\share c:\it\dst /s

这是我的电脑的屏幕截图。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

这是显示源文件夹和目标文件夹之间比较的屏幕截图。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

为什么 robocopy 只复制“Windows Defender”文件夹?由于其他文件夹为空,因此 /s 命令将排除空的子目录。

3.复制内容包括空子目录

在此示例中,我要将所有文件和文件夹从 c:\share 复制到同一台计算机上的文件夹 c:\it\dst。这次我将使用 /e 命令包含空子目录。

robocopy c:\share c:\it\dst /e

这是我的计算机上的命令的屏幕截图。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

这是文件夹比较。这次目标文件夹看起来就像源文件夹一样。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

4.安全复制内容(ACL权限)

如果您修改了文件和文件夹的权限并希望保留这些权限,则需要使用/copy:DATS选项。这不会复制所有者信息,请参阅示例 4 以包含所有者。

robocopy c:\share c:\it\dst /e /copy:DATS

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

这是比较其中一个文件夹的权限的屏幕截图。在源上,我修改了accounting文件夹的权限。您可以看到这些权限已复制到目标文件夹。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

5. 安全复制文件(包括所有者)

要包含文件或文件夹的所有者,请使用 /copy:DATSO 命令。

robocopy c:\share c:\it\dst /e /copy:DATSO

这是显示所有者信息已复制到目标文件夹的屏幕截图。如果没有此命令,该文件夹将继承所有者信息。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

6.复制所有文件信息

要复制所有文件属性,请使用 /copyall,这相当于 /copy:DATSOU。我更喜欢使用 /copyall 而不是列出每个属性类型。

robocopy c:\share c:\it\dst /e /copyall

这将复制以下文件属性。

  • D——数据
  • A - 属性
  • T——时间戳
  • S - NTFS 访问控制列表 (ACL)
  • O——所有者信息
  • U——审计信息

7. 镜像源目录和目标目录

此命令将镜像源目录和目标目录。您在源目录中所做的任何更改都将镜像到目标目录中。例如,如果您在源中添加/删除文件夹,则目标中也会发生同样的情况。

robocopy c:\source c:\it\dst /e /mir

下面是我运行 /mir 命令之前的屏幕截图。您可以看到源和目的地是不同的。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

运行 /mir 命令后,目的地将是相同的。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

/mir 命令的输出将显示源和目标之间有哪些变化。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

上面说的是目的地有一个额外的目录“Marketing”,所以它被删除了。然后它缺少两个目录“新文件夹(2)”和“测试”,所以它添加了这些。

8. 具有所有文件属性的镜像目录

前面的示例没有镜像源目录文件属性(ACL、所有者、时间戳等)。要镜像并包含文件属性,请使用此命令。

robocopy c:\source c:\it\dst /e /mir /copyall

例如,我将从“souce\accounting”文件夹的 ACL 中删除用户“Mark”。现在来源和目的地不同了。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

运行 /mir /copyall 命令后,“mark”将从 it\dst\accounting 文件夹中删除。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

9. 从目标目录中清除文件和文件夹

如果您已从源中删除了一堆文件/文件夹并希望将它们从目标文件夹中删除,请使用 /purge 选项。

robocopy c:\source c:\it\dst /e /purge

输出将显示它删除的文件夹。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

10.通过网络复制文件

通过网络复制文件与本地复制相同。还有一些其他命令可以帮助通过网络传输文件,接下来我将介绍这些命令。 复制到远程设备时,最好使用 UNC 路径而不是映射驱动器。

robocopy c:\source \srv-vm2\share /z /e

上面的命令将文件从我的本地计算机复制到另一台服务器。 /z 选项以可重新启动模式复制文件。如果复制被中断,robocopy 可以从中断的地方继续。

11. 使用文件属性通过网络复制文件

如果要复制 ACL 和其他文件属性,请使用 /copyall。要仅复制 ACL,您可以使用 /copy:DATS。

robocopy c:\source \srv-vm2\share /z /e /copyall

12. 将输出保存到日志文件

要将 robocopy 输出写入日志文件,请使用 /log:logfile。这将在您每次运行命令时覆盖日志文件。

robocopy c:\source \srv-vm2\share /z /e /log:c:\it\logs.txt

这是日志文件的屏幕截图。当运行大型作业或迁移时,您肯定需要包含日志文件。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

13. 附加到现有日志文件

使用 /log+:logfile 命令追加现有日志文件。每次运行 robocopy 时都会将其添加到日志文件中。

robocopy c:\source \srv-vm2\share /z /e /log+:c:\it\logs.txt

14.多线程文件复制(提高复制速度)

默认情况下,robocopy 将使用 8 个线程。要增加线程,请使用 /mt 命令。下面的示例将使用 32 个线程。

robocopy c:\source \srv-vm2\share /z /e /mt:32

您需要测试此设置并查看哪种线程数最适合您的网络和计算机。

15. 包含详细日志记录

详细日志记录将显示跳过的文件。如果您要复制关键文件或迁移到新服务器,我会在输出中包含详细日志记录,甚至更好,将其包含在日志文件中。

robocopy c:\source \srv-vm2\share /v

在日志文件中包含详细日志记录。

robocopy c:\source \srv-vm2\share /v /log:c:\it\logs.txt

16.指定失败副本的重试

/r 命令指定失败副本的重试次数。建议在大型文件副本和通过网络复制时这样做。网络文件复制可能会中断,/r 将自动重试任何失败的复制。

robocopy C:\source C:\it\dst  /LOG+:c:\it\robolog.txt /MIR /copyall /z /w:1 /r:2 

17. 按文件类型复制文件

如果您需要复制特定文件类型,请使用以下命令。在此示例中,我将仅复制 txt 文件类型的文件。

robocopy C:\source \srv-vm2\share *.txt

下面您可以看到 robocopy 仅将 file1.txt 文件复制到目标目录。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

如果我想复制所有 jpg 类型的图像,我会使用 *.jpg。

18. 复制以以下开头的文件

您可以复制以特定字符或单词开头的文件。例如,我将复制所有以“文件”一词开头的文件。

 robocopy C:\source \srv-vm2\share file*

您可以在下面看到该命令仅复制名称中包含“file”的两个文件,其他所有内容都被跳过。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

19. 排除目录

要排除目录,请使用 /XD 选项。

robocopy C:\source \srv-vm2\share /XD /e "c:\source\accounting"

在此示例中,我将复制除“accounting 文件夹”之外的所有内容。您可以在下面看到目标不包括“accounting”文件夹。

[玩转系统] 21 个带有屏幕截图的 Robocopy 示例

20. 复制至少 14 天前的文件

这将复制时间戳至少为 14 天的文件。

ROBOCOPY C:\source \srv-vm2\share /minage:14

21.复制特定大小的文件

这将复制不排除 2000 字节的文件。

robocopy C:\source \srv-vm2\share /S /MAX:2000

您还可以使用 /min 来指定最小文件大小。

这是我的清单。要了解有关许多 robocopy 命令的更多信息,请查看 Microsoft 语法文档。

您有任何 robocopy 示例可以分享吗?请在下面的评论中告诉我。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯