如何编写批处理脚本实时监控文件夹并自动拷贝新文件到远程文件夹?
摘要:想到一个情景。程序实时监测文件夹情况,如果有新文件进入,分析其文件名,然后如果满足预设条件,则做相应操作。比如扫描仪扫描了文件,会将新文件保存进特定文件夹内,可以使用该程序来做处理。 在Windows端最直接的就是用.bat批处理,当然使用
想到一个情景。程序实时监测文件夹情况,如果有新文件进入,分析其文件名,然后如果满足预设条件,则做相应操作。比如扫描仪扫描了文件,会将新文件保存进特定文件夹内,可以使用该程序来做处理。
在Windows端最直接的就是用.bat批处理,当然使用Powershell或者C#、python语言平台更轻松专业,这里使用 .bat 实现。笔者喜欢黑窗口下,看着字符串一行行打印出来的感觉,啊哈哈~~~
【设计需求】
使用cmd实现:检测文件夹(D:\projects\cmd\targetdir) 内是否有新文件出现,如果有,查看该文件的文件名,如果是以A字符打头的,那么将该文件发送给远程文件夹(\\DESKTOP-JL8BQNM\temp4share) 程序不断地去检测,注意生成日志方便调式和日后维护。
【设计思路】
1. 要想监测文件夹内是否有新文件,需要对比当前的文件列表和之前的文件列表,如果有出入,则有增添删减文件
2. 把新文件名称记录下来,解析字符并做比较,得出满足条件的文件对象。
3. 将满足条件的文件拷贝到远程文件夹中。其中远程通讯需要双方都开启共享。
4. 每个关键操作需要概括为描述性字符,写入日志文件中。
5. 程序需要有死循环机制,让其不断监测,Ctrl+C 可退出。
