Board logo

标题: 怎么给批处理写个配置文件 [打印本页]

作者: 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
学习中 希望看到更多的回答