中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-08 16:16
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [已解决]大家好,帮我批一下好吗?可能有点难度 查看 2,096 回复 16
楼 主 [已解决]大家好,帮我批一下好吗?可能有点难度 发表于 2008-05-21 21:18 ·  中国 浙江 台州 电信
初级用户
积分 76
发帖 34
注册 2008-05-10 16:18
18年会员
UID 118340
性别 男
状态 离线
读取配置文件"%01 ....." "%02D:\AUTO-SYS\" "%03C:\游戏\"内容

插入load.exe空格后面 "%05" "%04" "%06" "%07" "%08" "%09" "%10" "%110" "%12log.ini" "%133" "%140" "%151" "%18skin0383.skn" "%201" "%211"

改全部%为双%%配置文件有多条,完成后并运行。

完成后要这样load.exe "%%01 ....." "%%02D:\AUTO-SYS\" "%%03C:\游戏\" "%%05" "%%04" "%%06" "%%07" "%%08" "%%09" "%%10" "%%110" "%%12log.ini" "%%133" "%%140" "%%151" "%%18skin0383.skn" "%%201" "%%211"

配置文件

网络目录=D:\AUTO-SYS
本地目录=C:\游戏
运行游戏=
启动参数=
导注册表=
预先执行=
预先执行参数=
忽略时间误差=3
排除文件=
排除目录=
弹出更新选择窗口=否
是否删除多余文件=否
对比大小=是
对比时间=是
命令行="%01 ....." "%02D:\AUTO-SYS\" "%03C:\游戏\" "%04" "%05" "%06" "%07" "%08" "%09" "%10E:\测试中\讯闪调用工具v1.3\load\pic\游戏.jpg" "%11" "%12" "%133" "%140" "%151" "%18skin0383.skn" "%201" "%211"

[ Last edited by snmm2004 on 2008-5-23 at 11:17 PM ]
2 发表于 2008-05-21 21:27 ·  中国 湖南 娄底 电信
银牌会员
★★★
积分 2,268
发帖 879
注册 2006-12-19 16:23
19年会员
UID 73968
性别 男
状态 离线
不知所云
致精致简!
3 发表于 2008-05-21 21:30 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
实在看不懂,理解能力有限。
4 发表于 2008-05-21 21:47 ·  中国 浙江 台州 电信
初级用户
积分 76
发帖 34
注册 2008-05-10 16:18
18年会员
UID 118340
性别 男
状态 离线
我的意思是,读取配置文件里需要的一段内容,加入到已有的代码load.exe后面,再把全部%改为%%

已有代码如下
load.exe "%05" "%04" "%06" "%07" "%08" "%09" "%10" "%110" "%12log.ini" "%133" "%140" "%151" "%18skin0383.skn" "%201" "%211"
5 仅做到将需要的内容提出来: 发表于 2008-05-21 22:47 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
@echo off&setlocal enabledelayedexpansion
for /f "delims=命令行=" %%i in (a.ini) do set str=%%i
:lp
set a=!str:~,1!
set var=!var!!a!
if not "!var:~-4,2!"=="戏\" set str=!str:~1!&goto lp
echo !var!
pause>nul
批处理之家新域名:www.bathome.net
6 发表于 2008-05-21 23:02 ·  中国 浙江 台州 电信
初级用户
积分 76
发帖 34
注册 2008-05-10 16:18
18年会员
UID 118340
性别 男
状态 离线
谢谢5楼的兄弟,不过if not "!var:~-4,2!"=="戏\"不行呀,戏这里要换名字的,后面代码不变的
7 基本问题已解决: 发表于 2008-05-21 23:09 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线

@echo off&setlocal enabledelayedexpansion
for /f "delims=命令行=" %%i in (a.ini) do set str=%%i
set t=%%%
set k=%%%%
:lp
set a=!str:~,1!
set var=!var!!a!
if not "!var:~-2!"=="05" set str=!str:~1!&goto lp
set var=!var:~,-10!
echo load.exe !var:%t%=%k%! "%%05" "%%04" "%%06" "%%07" "%%08" "%%09" "%%10" "%%110" "%%12log.ini" "%%133" "%%140" "%%151" "%%18skin0383.skn" "%%201" "%%211"
pause>nul


[ Last edited by zw19750516 on 2008-5-21 at 11:28 PM ]
批处理之家新域名:www.bathome.net
8 发表于 2008-05-21 23:41 ·  中国 浙江 台州 电信
初级用户
积分 76
发帖 34
注册 2008-05-10 16:18
18年会员
UID 118340
性别 男
状态 离线
很好,还有点问题,"%05"这里开始到最后只有单%不是双%%,我就把%%加了2个,一共4个,读出来正常,这样可以吗?
还有就是,我读取配置文件总是读最后一条,我的配置文件一共差不多100条,再帮我批一下,谢谢了
多条配置如下
[游戏]
网络目录=D:\AUTO-SYS
本地目录=C:\游戏
运行游戏=
启动参数=
导注册表=
预先执行=
预先执行参数=
忽略时间误差=3
排除文件=
排除目录=
弹出更新选择窗口=否
是否删除多余文件=否
对比大小=是
对比时间=是
命令行="%01 [游戏]....." "%02D:\AUTO-SYS\" "%03C:\游戏\" "%04" "%05" "%06" "%07" "%08" "%09" "%10E:\测试中\讯闪调用工具v1.3\load\pic\游戏.jpg" "%11" "%12" "%133" "%140" "%151" "%18skin0383.skn" "%201" "%211"
[游戏2]
网络目录=D:\AUTO-IMG
本地目录=C:\游戏2
运行游戏=
启动参数=
导注册表=
预先执行=
预先执行参数=
忽略时间误差=3
排除文件=
排除目录=
弹出更新选择窗口=否
是否删除多余文件=否
对比大小=是
对比时间=是
命令行="%01 [游戏2]....." "%02D:\AUTO-IMG\" "%03C:\游戏2\" "%04" "%05" "%06" "%07" "%08" "%09" "%10C:\Documents and Settings\mmx\桌面\load\pic\游戏2.jpg" "%11" "%12" "%133" "%140" "%151" "%18skin0383.skn" "%201" "%211"
9 晕,你还真的是一点都不懂啊: 发表于 2008-05-21 23:58 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线

@echo off&setlocal enabledelayedexpansion
set t=%%%
set k=%%%%
for /f "skip=2 delims=命令行=" %%i in ('find "命令行" a.ini') do set str=%%i&call :lp
pause>nul&goto :eof
:lp
set a=!str:~,1!
set var=!var!!a!
if not "!var:~-2!"=="05" set str=!str:~1!&goto lp
set var=!var:~,-10!
echo load.exe !var:%t%=%k%! "%%05" "%%04" "%%06" "%%07" "%%08" "%%09" "%%10" "%%110" "%%12log.ini" "%%133" "%%140" "%%151" "%%18skin0383.skn" "%%201" "%%211"
set var=


[ Last edited by zw19750516 on 2008-5-22 at 12:07 AM ]
批处理之家新域名:www.bathome.net
10 发表于 2008-05-22 00:07 ·  中国 江苏 常州 溧阳市 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
20年会员
UID 42345
状态 离线
@echo off&setlocal enabledelayedexpansion
for /f "usebackq delims=" %%i in (`type a.ini ^| find /i "命令行="`) do set %%i
set 命令行=!命令行:%%=%%%%!
echo load.exe !命令行!
pause
简单!简单!再简单!
11 发表于 2008-05-22 00:15 ·  中国 浙江 台州 电信
初级用户
积分 76
发帖 34
注册 2008-05-10 16:18
18年会员
UID 118340
性别 男
状态 离线
帮帮忙啦,我真的不会,不过真的很需要这个命令。
现在一条也不读了,麻烦你了,再改一下,给点注析好吗?
呵呵太感谢了,老大
12 发表于 2008-05-22 00:16 ·  中国 浙江 台州 电信
初级用户
积分 76
发帖 34
注册 2008-05-10 16:18
18年会员
UID 118340
性别 男
状态 离线
下面又有一条没看,试一下
13 发表于 2008-05-22 00:21 ·  中国 浙江 台州 电信
初级用户
积分 76
发帖 34
注册 2008-05-10 16:18
18年会员
UID 118340
性别 男
状态 离线
不行呀,我笨
14 发表于 2008-05-22 00:23 ·  中国 湖南 株洲 电信
金牌会员
★★★★
永远的学习者
积分 3,105
发帖 1,276
注册 2008-03-08 13:00
18年会员
UID 112398
性别 男
状态 离线
我9楼的代码没问题的,你再试下。
批处理之家新域名:www.bathome.net
15 发表于 2008-05-22 01:03 ·  中国 江苏 常州 溧阳市 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
20年会员
UID 42345
状态 离线
把配置文件发上来不就好研究研究了 我上面发测试过的
简单!简单!再简单!
论坛跳转: