如何在Windows 7中实时同步两个文件夹?

如何在Windows 7中实时同步两个文件夹?

我想在Windows 7下实时同步两个文件夹。

基本上,我想监控一个文件夹并将每个更改(新文件、更改的文件、删除的文件)同步到另一个驱动器。它必须是实时的,因此当发生更改时它会立即同步。单向同步就足够了。

我尝试过微软的同步玩具,但它只能手动或按计划进行同步(因此不满足“实时”要求)。

这可以通过 Windows 7 本身实现吗?如果不行,还有其他方法可以实现吗?

答案1

去同步让您可以做到这一点。我不确定它在 Windows 7 中如何工作,但它是免费软件和独立软件,所以尝试一下也没什么坏处。

答案2

我使用 ROBOCOPY 命令并创建了一个命令行来执行两个文件夹之间的同步(增量同步)。我的命令如下

ROBOCOPY "Source_Folder" "Destination_Folder" /E /ZB /XJ /XF "~*.*" "*~.*" "desktop.ini" "Thumbs.db" "*.torrent" ".lock" ".Sync*" /xd "Rubbish" ".Sync*" ".Box Sync" "_private" "Outlook Files" /FFT /MT /R:2 /W:5 /V /MON:1 /TEE

(排除文件:、、、、、、"~*.*"和) (排除文件夹,包括这些文件夹中的文件:、、、、 和 )。此外,这会在每一分钟和/或文件/文件夹的单个更改时重复 。 "*~.*""desktop.ini""Thumbs.db""*.torrent"".lock"".Sync*""Rubbish"".Sync*"".Box Sync""_private""Outlook Files"

旗帜

/E      Copy subdirectories, including empty ones.
/ZB     Use restartable mode; if access denied use backup mode.
/XJ     Exclude junction points. (normally included by default).
/FFT    Assume FAT file times (2-second granularity).
/MT     Do multi-threaded copies with 8 threads.
/R:2    Number of retries on failed copies.
/W:5    Wait time between retries.
/V      Produce verbose output, showing skipped files.
/TEE    Output to console window, as well as the log file.
/MON:1  Monitor source; run again when more than 1 change seen.

/XF [files]  Exclude files matching given names/paths/wildcards.
/XD [dirs]   Exclude directories matching given names/paths.

有关标志的列表,请参阅Robocopy 终极指南

答案3

辛克龙它是开源的并且跨平台的。

答案4

因为我读了你的评论“...映射驱动器(同步目标)是 Linux”,所以我想给你一个更好的方法:你只需要在 Linux 目标上进行 ssh 访问,它速度更快,并且在较低带宽和较长延迟下工作得更好。

使用温SCP的”保持远程目录最新“ 功能!

您需要对传输选项进行一些调整,以设置始终为二进制文件、排除文件(通常是 svn 或 git 文件等)等。还可以使用传输选项的“自动应用”。此外,创建一个设置了主机、本地和远程目录的会话。此时,您只需打开 WinSCP,激活会话(然后由于主机匹配等原因,会话也会自动应用传输选项),然后点击保持更新按钮。

或者你可以编写这个脚本使用 WinSCPs 脚本工具!

.. 顺便说一句:如果场景是 Unix-to-Unix,那么看看这个问题

相关内容