嵌套令牌搜索批处理文件

时间:2016-06-01 17:58:17

标签: parsing batch-file

我有一个批处理文件,我正在尝试使用它来实现IIS服务器日志。以下是所涉及的所有文件的详细信息以及我看到的最终输出

批处理文件:

setlocal
set zipfolder=D:\Statscheck\zipped\
set statsdir=D:\Statscheck\
set statsfolder=Statscheck
d:
cd\
cd\%statsfolder%
dir w3* /s /b > d:\server-scripts\temp\process.txt
set THECSVFILE=d:\server-scripts\temp\process.txt

::read %THECSVFILE% and loop through each line
for /F "usebackq tokens=* delims=\" %%A in (%THECSVFILE%) do (
    set dirname=%%A
)
for /F "usebackq tokens=3 delims=\" %%A in (%THECSVFILE%) do (
    set filename=%%A
    call :process_line
)
:process_line
set buildfile= %zipfolder%stats-%filename%-archive.zip
echo filename %buildfile% >>D:\server-scripts\temp\output.txt
echo directory %dirname% >>D:\server-scripts\temp\output.txt

Process.txt

D:\Statscheck\dphs92\W3SVC1532191319
D:\Statscheck\kcnw\W3SVC232480661
D:\Statscheck\master\W3SVC84257322
D:\Statscheck\warlords\W3SVC1913965975

output.txt

filename  D:\Statscheck\zipped\stats-dphs92-archive.zip 
directory D:\Statscheck\warlords\W3SVC1913965975 
filename  D:\Statscheck\zipped\stats-kcnw-archive.zip 
directory D:\Statscheck\warlords\W3SVC1913965975 
filename  D:\Statscheck\zipped\stats-master-archive.zip 
directory D:\Statscheck\warlords\W3SVC1913965975 
filename  D:\Statscheck\zipped\stats-warlords-archive.zip 
directory D:\Statscheck\warlords\W3SVC1913965975 

从输出中可以看出,它正确构建了filename选项,但是被拉出的目录是列表中的最后一个。是不是循环。

0 个答案:

没有答案