批处理文件 [计划任务] 复制 rot 目录下的所有.txt文件



我在很多子目录中都有.txt个文件,这些目录不断接收新文件 [日志],但旧文件不会被删除。

我需要继续将各个子文件夹下的文件与包含所有.txt文件的文件夹同步。由于我们有很多文件,并且它们不断被创建而不是删除,我想知道是否有一个.bat文件代码,我可以使用并计划每分钟运行一次,以使这些文件保持同步?以某种方式使用机器人复制更好吗?

根据您需要在多少台计算机上运行它,我建议使用类似 Microsoft SyncToy2.1 之类的东西来同步文件,然后在批处理文件中像往常一样删除。

例如,为每个文件夹创建一个文件夹同步对,然后使用批处理文件调用进程,然后删除:

“C:Program FilesSyncToy 2.1SyncToyCmd.exe -R"
/wait
Del c:PathToTxtFiles*.txt /f
Exit

使用 -R 开关调用"SyncToyCmd.exe"将告诉它同步所有文件夹对,然后运行删除命令以清除所有旧文件。 HowToGeek对SyncToy的工作原理以及如何最好地根据您的情况进行设置做了很好的解释:http://www.howtogeek.com/howto/25046/schedule-synctoy-to-run-automatically-with-task-scheduler-in-windows-7/

编辑:我没有注意到你说你不想删除它们的地方(我没有像我应该的那样注意(

在这种情况下,我可能会建议两个批处理文件命名一个同步.bat以下两行:

XCOPY "%1" "%2" /D /I %3
XCOPY "%2" "%1" /D /I %3

第二个用以下行命名了任何东西:

SYNC "C:My Project" "\DELLMy Project" /S

目的是第二个将使用您在第二个中输入的参数调用第一个(即它将调用"C:\My Project"的xCopy到服务器共享"\DELL\My Project"(。/D 开关告诉它将较新的文件从源复制到目标,如果您不希望双向同步,则可以删除第二行;/I 告诉它目标是一个目录(它阻止它询问它是否是您要复制到的目录或文件(。 您可以在第二个上省略/S,在第一个上省略 %3。

Tech-Pro.net 有一篇文章很好地解释了它(使用我使用的相同代码(位于这里:http://www.tech-pro.net/howto_033.html

最新更新