![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-23 16:11 |
共 47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,273 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 关于判断计算机名的启动批处理,请教! |
| 可打印版本 1,005 / 5 |
| 第1楼 lhkyzh | 发表于 2006-06-04 19:05 |
| 初级用户 发帖 12 积分 34 | |
|
关于判断计算机名的启动批处理,请教! 是这样。上面要求网吧安装净网先锋,我把它的执行文件提出来,放在服务器上,利用客户机的启动批处理执行。 但是我只想让部分机子运行净网先锋,其他的客户机还是运行一个监视窗口的软件。 客户机系统是一起克出来的。
如果判断某个文件存在的话。我需要去一台台添加某个文件 在网上找到一个实例,利用机器名判断是否运行命令,但有个问题不会解决: 所有客户机启动都会执行\\user01上的up.bat 内容是: @echo off for /f "skip=1 tokens=1" %%N IN (\\user01\up$\name.ini) Do if %ComputerName%==%%N ( @echo 本台机器特殊!执行其他命令 call \\user01\up$\up1.bat ) Else ( @echo 此机执行正常命令 call \\user01\up$\up2.bat ) 服务器上up1.bat如下: @echo off start \\192.168.0.101\up$\禁止.exe start \\user01\up$\净网文件\MainPro.exe exit 服务器上up2.bat如下: @echo off start \\192.168.0.101\up$\禁止.exe echo. & exit name.ini内容如下: [ComputerName] AT11 AT10 上报完毕。 name.ini里存在的计算名的客户机就执行up1.bat 也就是运行净网先锋。 其他客户机运行禁止.exe 问题是:它只判断name.ini里第2行。AT11,AT10都写进name.ini里。 但是只有AT11会运行up1.bat, 把AT10写在上面,也只是AT10能运行。 怎么弄就只有一台能够附和运行up1.bat的条件 小弟刚学批处理。关于for的用法也是第一次使用。请求大家帮助! 感谢先。 |
|
| 第2楼 LanCat | 发表于 2006-06-04 21:08 |
| 中级用户 发帖 78 积分 288 | |
|
Up1.bat和Up2.bat中不能加exit命令,加了就退出了,就不会返回到Up.bat了。
|
|
| 第3楼 lhkyzh | 发表于 2006-06-04 21:41 |
| 初级用户 发帖 12 积分 34 | |
|
谢谢楼上的回复。但问题不是那样。
并不需要up1.bat up2.bat的返回值啊。 我的意思:判断本机的变良%ComputerName%然后和name.ini对照 如果存在就执行up1.bat 不存在就执行2.bat |
|
| 第4楼 lhkyzh | 发表于 2006-06-04 22:58 |
| 初级用户 发帖 12 积分 34 | |
|
顶
|
|
| 第5楼 lhkyzh | 发表于 2006-06-05 14:30 |
| 初级用户 发帖 12 积分 34 | |
|
顶顶顶顶顶。。。。。。。。。
|
|
| 第6楼 bagpipe | 发表于 2006-06-06 10:51 |
| 银牌会员 发帖 425 积分 1,144 来自 北京 | |
|
似乎问题就出在EXIT命令上,我看up.bat并没有什么太大的问题,由于没有条件测试请原谅.......
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |