Powershell记录文件同步

时间:2017-04-18 12:22:13

标签: powershell

我必须将日志文件从服务器同步到网络共享,间隔为每5分钟一次。有时,日志文件大小会增加到GB。那时,通过网络复制大文件将花费很多时间和带宽。

是否还有将修改后的内容复制到目标文件?

例如,脚本首先将所有文件复制到目标。然后第二次脚本将在5分钟后运行,它将复制在最后5分钟内添加的额外内容。

1 个答案:

答案 0 :(得分:0)

一个简单的robocopy命令会为您执行此操作,您可以多次运行它,如果文件没有更改,它将不会复制文件。基本语法是这样的:

robocopy "C:\logs" "\\server\share\logs\" /W:2 /R:5

/W/R开关设置等待和重试选项;在这种情况下,Robocopy将重试每个副本最多5次,在两次尝试之间等待2秒。 (默认值允许100万次重试,间隔为30秒!)

“重复复制选项”也可能对您有用:

  • /MON:n:监控来源;当看到超过n个变化时再次运行。

  • /MOT:m:MOnitor来源;如果更改,则在几分钟内再次运行。

Robocopy非常强大,而且有很多选项可供选择。要查看完整语法,请在命令提示符下键入robocopy /?