Robocopy或健壮的文件和文件夹复制应用程序在Windows系统管理员中非常流行。Robocopy将本地或给定文件复制到远程或目标位置。
robocopy功能
robocopy命令为通过网络复制文件提供了非常有用的功能。下面我们将列出其中一些。
Resume Interrupted Copy
当网络或远程主机在复制过程中关闭时,复制操作可以在其离开的位置继续。
Preserve File Attributes and timestamp
同时保留所有者和审核信息的复制文件的。
Ability To Update Copied File Attributes and Timestamps
将设置为最新日期和时间的复制文件和文件夹。
Administrator Owned File Copy
选项支持 /B
.
Mirror Mode
提供同步或镜像给定的文件和文件夹或目录更新的文件将被更新,删除的文件将被删除在目标上。
Skip Allready Existing Files
通过检查大小和时间戳信息并将其与源和目标进行比较。
Progress Bar
将以图形方式显示当前的复制操作。
Multi-threaded copying
这将允许复制,镜像多个文件和目录在同一时间,这将减少完整的复制操作时间。
robocopy命令语法
一般语法 robocopy
命令如下。
robocopy SOURCE DESTINATION FILE OPTIONS
- SOURCE是要复制的源文件或目录
- DESTINATION是要复制的目标文件或目录
- 选项是我们想要使用的不同特性或行为,比如递归、详细、扩展过滤器等。
复制指定文件夹
最基本的操作 robocopy
正在将源文件夹复制到目标。在本例中,我们将复制名为 mytest
到目标文件夹 yourtest
> robocopy mytest yourtest

复制操作后,由提供一些统计信息 robocopy
-
Start
显示复制操作的开始时间 -
Source
显示源目录 -
Dest
显示目标目录 -
Files
显示文件筛选器 -
Options
显示给定选项 -
Total
显示文件和文件夹总数 -
Copied
显示复制的文件和文件夹计数 -
Skipped
显示未复制的文件和文件夹
相关文章: Linux下dd命令的备份实例
从本地系统复制到远程系统
我们也可以复制一个文件和文件夹到远程系统。我们将在目标路径之前提供远程系统主机名或IP地址。我们可以使用BACKUPSERVER 或10.5.2.30 指定远程系统。
在本例中,我们将复制名为 mytest
到具有IP地址的远程系统 192.168.122.46
在小路下面 Usersismail
与指定的 yourtest
.
> robocopy mytest 192.168.122.46Usersismailyourtest

仅复制给定的文件类型或扩展名
robocopy
复制文件时提供一些筛选功能。我们可以指定要复制的文件名和扩展名。这将跳过其他文件名和扩展名。我们将在目标文件夹后提供文件名或扩展名。
在这个例子中,我们只想复制 *.txt
扩展文件。
> robocopy mytest yourtest *.txt

我们可以从输出中看到,只有一个文件被复制,但有多个文件。复制的文件名和字节数也会打印出来。
复制子文件夹
默认情况下,只有一级目录被复制到目标。如果我们需要复制所有级别和子目录文件夹,我们应该启用 /S
.
> robocopy mytest yourtest /S

列出文件
robocopy有一个非常有用的特性,它不复制源文件,只列出源文件。如果我们想检查现有的文件和文件夹,这个功能很有用。我们可以用 /L
选项打印文件和目录列表。
> robocopy mytest yourtest /L

从输出中我们可以看到,所有文件和文件夹都被跳过,而不是复制。
相关文章: 什么是VPN和VPN隧道免费VPN列表?
递归列出文件
而robocy主要用于将文件从远程复制到本地或本地删除,我们可以使用 /L
和 /S
选项以列出远程文件。我们可以合并两个选项列表和递归列出所有级别的文件和文件夹。
> robocopy mytest yourtest /L /S
复制小于给定大小的文件
复制文件时,我们可以指定要复制的文件的大小。在本例中,我们将复制那些大小小于 1K
. 我们将使用 /MAX
此选项。
> robocopy mytest yourtest /S /MAX:1000

从结果中我们可以看到,有些文件被复制了,但由于大小限制,有些文件没有被复制。
复制大于给定大小的文件
与上一选项相反的是 /MIN
选项 . 这将只复制大于给定大小的文件。在本例中,我们将复制高于1K的文件 也就是1000千字节。
> robocopy mytest yourtest /S /MIN:1000

移动文件
的默认行为 robocopy
正在复制文件。有时我们可能需要移动文件。这可以通过 robocopy
我也是。我们将提供 /MOV
选项以移动文件和文件夹。
> robocopy mytest yourtest /S /MOVE
日志记录操作
在执行复制和移动操作时,我们还需要一些日志,特别是在批量数据操作中。我们可以使用 /LOG
选项。我们还可以指定日志文件名y添加在 /LOG
选项。在这个例子中,我们将写 robocopy
操作日志到名为 backup.log
. 这将阻止正常输出
> robocopy mytest yourtest /S /LOG:backup.log
日志文件可以用 type
在MS-DOS命令行中的命令如下。
> type backup.log

复制给定的文件属性
文件和文件夹可能具有不同的属性。这些属性可以用于不同的目的,如列表所有者、审核信息、时间戳等。我们也可以使用robocy命令复制这些属性。下面是我们可以为副本指定的属性。我们还将使用 /copy:
选项,添加要复制的属性。
-
D
用于复制数据属性 -
A
用于属性 -
T
时间戳 -
S
用于NTFS访问控制列表ACL -
O
用于所有者信息 -
U
用于审核信息
相关文章: 错误:权限被拒绝(公钥)和解决方案
在本例中,我们将使用以下命令复制时间戳属性。
> robocopy mytest yourtest /copy:T
使用/copyall复制所有属性
我们还可以用 /copyall
参数如下。这等于 /copy:DATSOU
.
> robocopy mytest yourtest /copyall
删除或删除源中不再存在的目标文件和目录
如果我们试图将本地文件和目录的相同副本复制到远程,我们需要清除或删除源中不再存在的远程文件和目录。我们可以用 /purge
此选项。
> robocopy mytest yourtest /purge