标题: 怎么给批处理写个配置文件
[打印本页]
作者: naruto3838
时间: 2009-1-21 12:26
标题: 怎么给批处理写个配置文件
由于Server的IP不是固定的,或者要在新的环境中使用
使得批处理必须经常修改如以IP和其他参数。
比如此句 net use U: \\192.168.1.254\share
不知可否使用一个配置文件来传递IP参数和其他参数。
如果可以,那应该如何编写配置文件?
————————————————————————————————
转移自 DOS疑难解答 & 问题讨论 (解答室)
明显发错版块,因属论坛新手,故暂不予以处罚,望今后引起注意。
——管理员
————————————————————————————————
作者: yishanju
时间: 2009-1-21 18:50
像我一般都批处理都这样写:
set ip=192.168.1.254
net use U: \\%ip%\share
另一种是把配置文件存成.bat 文件
set user=xxx
set pass=xxxxx
set ip=....
set data=mmmm
......
在需要调用变量的批处理里call 配置.bat
作者: naruto3838
时间: 2009-1-21 19:52
这也未尝不是一个好方法。
然而和我当初想的不太一样。
能不能把所有的配置存成一个.ini的文件呢?
作者: yishanju
时间: 2009-1-21 23:35
你可能会发现再用批处理去分析出配置文件里变量 ,会是一件非常痛苦难过的事情
作者: naruto3838
时间: 2009-1-23 15:20
使用者不一定懂得那么多命令。我做配置文件,是想让使用者得到方便。
自己用随时可以直接在批文件里改。
作者: naruto3838
时间: 2009-1-23 15:32
版主.高手呢?谁能具体说明一下,比如以下的share和ip字段要怎么抓?
[boot]
share=music
ip=192.168.0.254
[scan]
share=movie
ip=192.168.0.2
作者: yishanju
时间: 2009-1-24 04:47
需要find findstr for 这几命令,学会FOR命令就可以按自己的需要读配置文件里的信息了
for /f "delims== tokens=1,2" %%i in ('type a.INI^|findstr /c:"="') do (
echo %%i
echo %%j
)
pause
[ Last edited by yishanju on 2009-1-24 at 04:51 ]
作者: lihan584
时间: 2009-1-24 16:37
作者: naruto3838
时间: 2009-1-26 18:25
回7楼,这样还是不能解决我提出的问题
如:6楼所示,share 在[boot]、 [scan]中各有一个。
你这样的批做不到指定其中之一。
作者: slore
时间: 2009-1-26 19:02
开关=关
for %%i (
如果 %%i=[xxx] 开关=开
如果 第一个字符是"[" 且 开关=开 goto :ExitFor
如果 开关=开 echo %%i,你直接%%i也可以
)
:ExitFor
作者: samliu
时间: 2009-2-5 22:17