中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已结]批处理读取INI里内容后 判断是否是1或0
作者:
标题: [已结]批处理读取INI里内容后 判断是否是1或0 上一主题 | 下一主题
ddgg
新手上路





积分 6
发帖 6
注册 2008-10-18
状态 离线
『楼 主』:  [已结]批处理读取INI里内容后 判断是否是1或0

求教 批处理读取INI里内容后 判断是否是1或0 然后执行相应程序!

比如我有个INI里 文件内容如下:(;;;;;;;;;;;;;;;;;是我加上去的)

;;;;;;;;;;;;;;;;;
[数据库]
开放=1
;;;;;;;;;;;;;;;;;

用BAT 读取这个INI里的 开放后面的数字 如果是1 则执行a.bat 如果是0则执行b.bat 请问这个怎么写哇

[ Last edited by HAT on 2008-10-19 at 13:25 ]

2008-10-18 00:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ddgg
新手上路





积分 6
发帖 6
注册 2008-10-18
状态 离线
『第 2 楼』:  

比如我把这个 ini 放在C盘下 名字为  开关

ini路径就为  C:\开关.ini

2008-10-18 00:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
s11ss
银牌会员





积分 2098
发帖 566
注册 2007-9-11
状态 离线
『第 3 楼』:  

用论坛的搜索功能,搜索ini,可找到如下链接:
http://www.cn-dos.net/forum/view ... 1&highlight=ini

2008-10-18 01:46
查看资料  发短消息 网志   编辑帖子  回复  引用回复
ddgg
新手上路





积分 6
发帖 6
注册 2008-10-18
状态 离线
『第 4 楼』:  

郁闷 看了半天这个没看明白

2008-10-18 09:13
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ddgg
新手上路





积分 6
发帖 6
注册 2008-10-18
状态 离线
『第 5 楼』:  

我明白思路 但是对dos不太了解 不会写

高手能不能帮忙启发以下

设置变量  变量从 ini里 读取 开放=1
如果变量是1 则执行a.bat 如果是0 则执行b.bat

2008-10-18 09:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ddgg
新手上路





积分 6
发帖 6
注册 2008-10-18
状态 离线
『第 6 楼』:  [数据库]

@echo off
for /f "usebackq" %%i in (`type 开关.ini ^| find /i "开放="`) do set %%i
echo 数值是: %开放%

这个我凑出来了 下面开始判断  这个 %开放% 是否是1 还是 0 是1就执行a.bat 是0就执行b.bat
请问接下来怎么写,谢谢

2008-10-18 09:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ccily2701
初级用户





积分 80
发帖 45
注册 2006-9-22
来自 jiangxi
状态 离线
『第 7 楼』:  

findstr /i "开放=1" "C:\开关.ini" && start a.bat
findstr /i "开放=0" "C:\开关.ini" && start b.bat

[ Last edited by ccily2701 on 2008-10-18 at 10:07 ]

2008-10-18 10:06
查看资料  发送邮件  发短消息 网志  OICQ (27012508)  编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 8 楼』:  


@echo off
for /f "tokens=2 delims==" %%a in ('findstr "开放=" "a.ini"') do (
  set open=%%a
)
if "%open%" equ "1" (
  echo 后面的数字是1
) else if "%open%" equ "0" (
  echo 后面的数字是0
) else (
  echo 后面的数字不是1也不是0
)
pause




2008-10-18 10:12
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lianjiang2004
金牌会员





积分 3946
发帖 1884
注册 2006-1-20
状态 离线
『第 9 楼』:  

type C:\开关.ini |find /i "开放=1">nul &&call a.bat&&goto exit
type C:\开关.ini |find /i "开放=0">nul &&call b.bat&&goto exit


:exit



Windows 一键还原
http://www.yjhy.com
2008-10-18 11:04
查看资料  发短消息 网志   编辑帖子  回复  引用回复
radem
高级用户

CMD感染者


积分 691
发帖 383
注册 2008-5-23
状态 离线
『第 10 楼』:  

@echo off
for /f "tokens=2 delims==" %%a in ('find "开放=" "C:\开关.ini"') do set str=%%a
if "%str%" == "1" (call a.bat) else (if "%str%" == "0" (call b.bat) else (echo,数值不是0或1&pause&goto :eof)



2008-10-18 12:25
查看资料  发短消息 网志   编辑帖子  回复  引用回复
terse
银牌会员





积分 2404
发帖 946
注册 2005-9-8
状态 离线
『第 11 楼』:  


@echo off
findstr /i "^开放=1$" "C:\开关.ini">nul &&echo a.bat||findstr /i "^开放=0$" "C:\开关.ini">nul&&echo b.bat
pause




简单!简单!再简单!
2008-10-18 14:03
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
ddgg
新手上路





积分 6
发帖 6
注册 2008-10-18
状态 离线
『第 12 楼』:  

谢谢各位的帮助  现在就尝试一下 !

再次表示感谢!

2008-10-19 12:28
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: