标题: 怎么读取配置文件的指定行的数据给变量赋值?
[打印本页]
作者: mcubird
时间: 2009-1-19 11:48
标题: 怎么读取配置文件的指定行的数据给变量赋值?
自己写了一个批处理,现在是手工修改变量的参数。
想做一个配置文件,通过批处理将参数赋值给变量,怎么处理比较好?
最好能有外部工具,因为配置文件很长,用for的话会很臃肿..........
谢谢了先
作者: exzzz
时间: 2009-1-19 11:53
用for不会臃肿吧?
配置文件里面每一行都是需要设置的变量么?
作者: mcubird
时间: 2009-1-19 11:58
不是每一行都是参数......
作者: exzzz
时间: 2009-1-19 12:10
如果文件不涉及机密,建议贴上来作为附件,然后列明要求,不然看的人会一头雾水的。。。
作者: netbenton
时间: 2009-1-19 12:23
标题: 取文件指定行
call :sub
...
...
goto :eof
:sub
for /f "skip=行数" %%a in ('文件') do (set var=%%a&goto :eof)
::这样可以取一行
set n=1
for /f "skip=行数" %%a in ('文件') do (set /a n+=1&set var!n!=%%a&if !n!=4 goto :eof)
::这样可以取指定行后的连续4行
另外如果有多行:如1 55 88 1223...需要处理,
可以先把相应的行存成变量,set /a n+=1&if !n!==55 set "_var!n!=%%a"
再for /f %%a in ('set _var') do (进行操作...)
或 !_var55! !_var88! !_var1223!就是指定行的内容了
Last edited by netbenton on 2009-1-19 at 12:42 ]
作者: mcubird
时间: 2009-1-19 12:23
gawk "$3 == 34" val | gawk "/False/ {print $1,$2}" | gawk "$1 > %GeneralLowerLimit% && $1 < %GeneralUpperLimit%" | gawk -f ArithMetic.txt >> Results.txt
这个是处理程序中的一段,其中%GeneralLowerLimit%和%GeneralUpperLimit%是需要用户自己配置的参数,现在是在bat里让用户修改,我想做一个配置文本文件。
配置文件如下:
#GeneralLowerLimit
11
#GeneralUpperLimit
698
作者: mcubird
时间: 2009-1-19 12:46
谢谢5L的,我去试试看