![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-06 14:15 |
共 48,039 主题排行 / 350,124 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » CHOICE用法........ |
| 可打印版本 1,410 / 6 |
| 第1楼 necro | 发表于 2007-11-19 21:23 |
| 初级用户 发帖 8 积分 20 | |
|
CHOICE用法........ 我做了两个更改IP地址的批处理文件,现在想再做一个批处理文件实现我需要运行哪个更改IP的文件.
如两个更改IP的文件分别为: C:\test\a.bat C:\test\b.bat 我想做个c.bat,运行后提示我按Y执行a.bat,按N执行b.bat. 在网上查了不少批处理的命令与资料,苦于新手不得要领,还请各位高手指教。 我看网上不少帖子中都说批处理命令中的"choice"命令,加/c参数,可以实现根据输入值不同而执行不同的结果,可我设置后并不好用,在winXP在执行含有choice的文件,一闪即逝,根据没有等我输入参数,而在cmd下执行这个bat却提示我:'choice' 不是内部或外部命令,也不是可运行的程序. 怎么回事呢? |
|
| 第2楼 lxmxn | 发表于 2007-11-19 22:58 |
| 版主 发帖 4,938 积分 11,386 | |
|
用set /p来代替choice吧
|
|
| 第3楼 necro | 发表于 2007-11-20 09:41 |
| 初级用户 发帖 8 积分 20 | |
|
多谢版主,我一会就试试。
|
|
| 第4楼 necro | 发表于 2007-11-20 21:30 |
| 初级用户 发帖 8 积分 20 | |
|
版主,我按你的方法写了如下代码:
@echo off set /p choice=家用IP请按Y,公司IP请按N: if /i "%choice%"=="y" D:\IP_config_B_CN.bat if /i "%choice%"=="n" D:\IP_config_A_CN.bat 这样做的确可以实现我的要求,我把这个代码加下了Autoexec.bat文件里,希望系统启动时执行这个,可是我重启机器后并没有反应。。。。 你知道是什么原因吗?难道要我把批处里文件加在startup中去? |
|
| 第5楼 lxmxn | 发表于 2007-11-20 21:35 |
| 版主 发帖 4,938 积分 11,386 | |
|
对于Windows XP里面的Autoexec.bat文件,除了设置环境变量以及某几个命令,系统不再解释里面的其它命令,所以你写的IF语句无效。
可以将你写的脚本放“启动”文件夹里面,或者在注册表相应位置添加启动项。 |
|
| 第6楼 necro | 发表于 2007-11-21 12:09 |
| 初级用户 发帖 8 积分 20 | |
|
..........
看来只有这样了. 按上面的代码我必须按Y或N或然后回车才执行,有没有办法让我输入Y或N或就自动执行,无须我再按回车。 谢谢。 |
|
| 第7楼 ldr2zjj | 发表于 2007-11-21 18:21 |
| 初级用户 发帖 95 积分 167 | |
|
也可以放到启动里边`~让他自动运行啊`?
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |