windows .bat脚本检测文件更新,并复制

博主因需检测文件夹中文件是否更新并复制到指定路径,使用了windows bat脚本。文中给出了具体代码,包括创建文件夹、停止和启动服务、设置目录、删除历史文件、监控文件夹更新以及复制文件等操作。

最近需要检测文件夹中文件是否更新,然后复制到指定路径 ,使用的是windows  bat脚本

 

记录一下 ,代码如下

 

mkdir 001 002 003 004 005 006 007 008 009 010
mkdir 011 012 013 014 015 016 017 018 019 020

net stop w32Time
net start w32Time

@echo off & title 文件监控
color 0a & mode 36,3

set MtrDir=C:\ftp_files
set SourceDir=C:\ftp_files
set NetDir=Y:\

::修改服务器文件夹
set NET_FOLDER=capstone11

@echo "-********准备删除历史文件*********-\r\n"
del /f /q %SourceDir%\51200*

echo 正在初始化记录文件 ...
(for /f "delims=" %%a in ('dir /a-d/s/b "%MtrDir%\*"') do (
echo "%%~a"
))>"%tmp%\oFiles.Lst"

:Loop
set "Change="
cls & echo 正在监控文件夹是否更新 ...
for /f "delims=" %%a in ('dir /a-d/s/b "%MtrDir%"') do (
findstr /i "^\"%%~a\"$" "%tmp%\oFiles.Lst" >nul || (

::删除源文件 所有文件
::del /f /q "%%~a"
set Change=1

)
)
if defined Change (
::echo 发现新增文件,启动其它脚本。
::start "" "%Bat%"

@echo "-********准备复制文件*********-\r\n"
XCOPY %SourceDir%\* %NetDir%\%NET_FOLDER%\ /y/s/e

::先复制 再删除
::del /f /q %SourceDir%\51200*

)

)
goto Loop

转载于:https://www.cnblogs.com/ChenChangXiong/p/11078706.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值