考虑 out.txt 文件的格式如下:
Display Variable;
ID NAME value
===*==========*================
201 Variavle 07Dec2014
Display Variable12;
ID NAME value
===*==========*================
201 Variavle12 08Dec2014
Display Variable123;
ID NAME value
===*==========*================
201 Variavle123 09Dec2014
在批处理文件中,我们需要搜索变量,变量12 和变量123 并返回值将文件批处理到环境变量,其名称来自 NAME 列,如
SET Variavle=09Dec2014
SET Variavle12=08Dec2014
SET Variavle123=09Dec2014
请帮我完成。
答案 0 :(得分:1)
@echo off
for /f "tokens=2,3 delims= " %%A in ('FINDSTR /i /r /c:"Variavle.* " out.txt') do (
set "%%A=%%B"
)
set Variavle
答案 1 :(得分:0)
以下代码帮助我找到答案
SET Variavle=09Dec2014
SET Variavle12 = 08Dec2014 SET Variavle123 = 09Dec2014
@echo off
for /f "tokens=* " %%A in ('FINDSTR /i /r /c:"Variable " D:\test.txt') do (
SET _test=%%A
SET Variable=%_test:~20,5%
ECHO %Variable%
)
... ...
如果有任何变化,请告诉我!
Thanx寻求帮助。
答案 2 :(得分:0)
@npocmaka
"dev.bat"
@echo off
for / f" tokens = *" %% A in(' FINDSTR / i / r / c:" nBegin_fcst_dt" D:\ test.txt')do(
SET _test = Variavle 20142
SET nBegin_fcst_dt =%_ test:~13,5%
ECHO:%nBegin_fcst_dt%
)
" d:\ test.txt的"
ID NAME值
=== ========== =====
201 Variavle 20142
我刚刚运行了上面的脚本,例如" test.bat"
我得到了一些奇怪的输出。
预期产出 20142
当我运行脚本时,我第三次获得实际输出
First time: Nothing
第二次:~13,5 第三次:20142
d产品:> dev.bat
d产品:> dev.bat 〜13.5 d产品:> dev.bat 20142