中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 07:56
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎么给批处理写个配置文件 查看 1,017 回复 10
楼 主 怎么给批处理写个配置文件 发表于 2009-01-21 12:26 ·  中国 福建 厦门 电信
新手上路
积分 8
发帖 5
注册 2008-12-19 22:33
17年会员
UID 134404
性别 男
状态 离线
由于Server的IP不是固定的,或者要在新的环境中使用
使得批处理必须经常修改如以IP和其他参数。
比如此句 net use U: \\192.168.1.254\share
不知可否使用一个配置文件来传递IP参数和其他参数。
如果可以,那应该如何编写配置文件?



————————————————————————————————
转移自 DOS疑难解答 & 问题讨论 (解答室)
明显发错版块,因属论坛新手,故暂不予以处罚,望今后引起注意。
——管理员
————————————————————————————————
2 发表于 2009-01-21 18:50 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
像我一般都批处理都这样写:
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

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
3 发表于 2009-01-21 19:52 ·  中国 福建 厦门 电信
新手上路
积分 8
发帖 5
注册 2008-12-19 22:33
17年会员
UID 134404
性别 男
状态 离线
这也未尝不是一个好方法。
然而和我当初想的不太一样。
能不能把所有的配置存成一个.ini的文件呢?
4 发表于 2009-01-21 23:35 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
你可能会发现再用批处理去分析出配置文件里变量 ,会是一件非常痛苦难过的事情

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
5 发表于 2009-01-23 15:20 ·  中国 福建 厦门 电信
新手上路
积分 8
发帖 5
注册 2008-12-19 22:33
17年会员
UID 134404
性别 男
状态 离线
使用者不一定懂得那么多命令。我做配置文件,是想让使用者得到方便。
自己用随时可以直接在批文件里改。
6 发表于 2009-01-23 15:32 ·  中国 福建 厦门 电信
新手上路
积分 8
发帖 5
注册 2008-12-19 22:33
17年会员
UID 134404
性别 男
状态 离线
版主.高手呢?谁能具体说明一下,比如以下的share和ip字段要怎么抓?
[boot]
share=music
ip=192.168.0.254
[scan]
share=movie
ip=192.168.0.2
7 发表于 2009-01-24 04:47 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
需要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 ]

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
8 发表于 2009-01-24 16:37 ·  中国 天津 电信
新手上路
积分 11
发帖 10
注册 2009-01-14 15:19
17年会员
UID 136663
性别 男
状态 离线
很好。
9 发表于 2009-01-26 18:25 ·  中国 福建 厦门 电信
新手上路
积分 8
发帖 5
注册 2008-12-19 22:33
17年会员
UID 134404
性别 男
状态 离线
回7楼,这样还是不能解决我提出的问题
如:6楼所示,share 在[boot]、 [scan]中各有一个。
你这样的批做不到指定其中之一。
10 发表于 2009-01-26 19:02 ·  中国 陕西 西安 电信
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
开关=关
for %%i (
如果 %%i=[xxx] 开关=开
如果 第一个字符是"[" 且 开关=开 goto :ExitFor
如果 开关=开 echo %%i,你直接%%i也可以
)
:ExitFor
S smile 微笑,L love 爱,O optimism 乐观,R relax 放松,E enthusiasm 热情...Slore
11 发表于 2009-02-05 22:17 ·  中国 黑龙江 哈尔滨 电信
新手上路
积分 15
发帖 15
注册 2009-01-24 10:46
17年会员
UID 137352
性别 男
状态 离线
学习中
希望看到更多的回答
论坛跳转: