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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM