我需要将每分钟生成的文本文件组合成单个文件的代码,意味着脚本运行并检查特定文件夹中最后15分钟生成的文件,然后将文件合并到单个文件中,这个单个文件必须在不同的文件夹中生成。
例如:当前时间15:30:00
,C:/New
中生成的文件为
A.TXT DateModified 20170101150150 (YYYYMMDDHHMMSS)
B.TXT DateModified 20170101151630 (YYYYMMDDHHMMSS)
C.TXT DateModified 20170101151740 (YYYYMMDDHHMMSS)
D.TXT DateModified 20170101151850 (YYYYMMDDHHMMSS)
然后:E.TXT
将生成C:/Backup
E.TXT = B.TXT + C.TXT + D.TXT
A.TXT
不得包含在E.TXT
批处理文件所需的脚本。
:start
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"
set "YY=%dt:~2,2%"
set "YYYY=%dt:~0,4%"
set "MM=%dt:~4,2%"
set "DD=%dt:~6,2%"
set "HH=%dt:~8,2%"
set "Min=%dt:~10,2%"
set "Sec=%dt:~12,2%"
set "MS=%dt:~15,3%"
set "datestamp=%YYYY%%MM%%DD%"
set "timestamp=%HH%%Min%%Sec%"
set "fullstamp=%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%-%MS%"
echo CurrentDate: "%datestamp%"
set SH=%Min%-15
COPY "C:\Users\hp\Desktop\New folder (2)\%datestamp%_%HH%%SH%*.txt" "C:\Users\hp\Desktop\New folder (2)\Complete_%datestamp%.txt"
TIMEOUT /T 15
GOTO start
但是这个副本只有2或3个文件,而不是15分钟内生成的所有文件
答案 0 :(得分:0)
生成E.txt
set/p B=<B.txt
set/p C=<C.txt
set/p D=<D.txt
echo %B%>>E.txt
echo %C%>>E.txt
echo %D%>>E.txt
输出,E.txt单个文件,包含B.txt C.txt和D.txt的所有内容 (A.txt不会复制)
使用set /a sh=min-15
进行时间调整。