windows 下 forfiles 与rsync 同步指定文件夹下的文件

简介:

场景:windowds服务器,某一个目录下文件数有数万个。

采用rsync 同步的时候 可以看出rsync 服务端卡在build filelist阶段 客户端 卡在receiving incremental file list 阶段。

考虑到一个目录下文件太多,rsync在处理文件列表的时候可能会很慢,逐结合windows下的forfiles使用

比如该文件夹路径为:

e:\webroot\upload.xxx.com\upload\upload12\2014\

DST的地址为 192.168.0.2::web_bak/webroot/upload.xxx.com/upload/upload12/2014/

SRC为 /upload.ccc.com/upload/upload12/2014/

则 同步命令可为


forfiles /p e:\webroot\upload.xxx.com\upload\upload12\2014\ /c "cmd /c rsync -ztopg /upload.ccc.com/upload/upload12/2014/@file  192.168.0.2::web_bak/webroot/upload.xxx.com/upload/upload12/2014/@file"


其中@file 是forfiles返回的变量 文件名

其他forfiles 的变量还有 @path 文件的全路径  @fname 无扩展的文件名 @ext 文件的扩展名 @relpath  文件的相对路径 @fsize 文件的大小 @fdate 文件的上一次修改日期 @ftime 文件的修改时间



————————————————————————————————————————————

事实证明用forlfiles 和rsync来配置实际是forfiles遍历目录,每个文件执行一次rsync 将会导致重复的rsync连接 断开,一个目录下数十万个文件下 速度更慢,是不可行的,唯一解决了的是 以前卡在filelist的阶段,并且卡到数小时不见开始传输(估计与文件系统和单目录下文件过多导致列不出文件有关) 而用forfiles可以马上开始传输,但是没有提高效率





      本文转自天山三害 51CTO博客,原文链接:http://blog.51cto.com/skybug/1402263 ,如需转载请自行联系原作者



相关文章
|
2月前
|
存储 UED Windows
Windows服务器上大量文件迁移方案
Windows服务器上大量文件迁移方案
148 1
|
2月前
|
iOS开发 MacOS Windows
Mac air使用Boot Camp安装win10 ,拷贝 Windows 文件时出错
Mac air使用Boot Camp安装win10 ,拷贝 Windows 文件时出错
|
1月前
|
存储 开发框架 .NET
Windows IIS中asp的global.asa全局配置文件使用说明
Windows IIS中asp的global.asa全局配置文件使用说明
37 1
|
1月前
|
Java Windows
如何在windows上运行jar包/JAR文件 如何在cmd上运行 jar包 保姆级教程 超详细
本文提供了一个详细的教程,解释了如何在Windows操作系统的命令提示符(cmd)中运行JAR文件。
899 1
|
2月前
|
Linux Windows
Windows系统批量创建文件夹的技巧
Windows系统批量创建文件夹的技巧
|
1月前
|
程序员 Windows
程序员必备文件搜索工具 Everything 带安装包!!! 比windows自带的文件搜索快几百倍!!! 超级好用的文件搜索工具,仅几兆,不占内存,打开即用
文章推荐了程序员必备的文件搜索工具Everything,并提供了安装包下载链接,强调其比Windows自带搜索快且占用内存少。
43 0
|
2月前
|
Windows
windows 文件夹视图全局生效
【8月更文挑战第31天】在 Windows 中,要使文件夹视图设置全局生效,请先在一个文件夹中设置视图模式和排序方式等,然后点击“查看”选项卡中的“选项”按钮,打开“文件夹选项”,切换到“查看”选项卡,点击“应用到文件夹”按钮以确认设置。这样,大多数文件夹将采用相同视图。不过,部分特殊文件夹可能不遵循此设置。
|
2月前
|
Windows
7-3|windows删除目录下的所有文件的命令
7-3|windows删除目录下的所有文件的命令
|
2月前
|
Windows
Windows7电脑启动时提示文件winload.exe无法验证其数字签名,错误代码0xc0000428的解决方法
Windows7电脑启动时提示文件winload.exe无法验证其数字签名,错误代码0xc0000428的解决方法
|
3月前
|
Python Windows
【Azure 应用服务】App Service For Windows 环境中部署Python站点后,如何继续访问静态资源文件呢(Serving Static Files)?
【Azure 应用服务】App Service For Windows 环境中部署Python站点后,如何继续访问静态资源文件呢(Serving Static Files)?