中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 20:45
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [推荐]dos批处理高级教程精选合编 查看 850 回复 3
楼 主 [推荐]dos批处理高级教程精选合编 发表于 2008-09-21 20:37 ·  中国 河北 廊坊 联通
初级用户
积分 56
发帖 24
注册 2006-12-25 21:19
19年会员
UID 74548
性别 男
状态 离线
今天有幸得到了论坛中HAT朋友的大力帮助,再次感谢.我想什么事总是靠别人是不行的.我决定现在开始学习下DOS 的批处理命令.这是刚从网上找到的部分资料
很高兴能和大家分享.原来论坛上有朋友贴过.我再发个PDF 格式的.
http://upload.cn-dos.net/img/778.rar
2 发表于 2008-09-21 20:43 ·  中国 河北 廊坊 联通
初级用户
积分 56
发帖 24
注册 2006-12-25 21:19
19年会员
UID 74548
性别 男
状态 离线
另外还有个问题想再麻烦下大家
刚刚使用HAT 朋友提供的脚本


@echo off
>b.txt type nul
for /f "tokens=1-3 delims=:=" %%a in (a.txt) do (
echo.%%a=e:%%c
)
move /y b.txt a.txt

效果不错不过还是有个问题.有些地方多出来了个=号不知为什么
例如
原文本
[directories]
SystemDir=c:\pads2005\2005PADS\SDD_HOME\Programs
FileDir=c:\pads2005\PADS Projects
UserDir=c:\pads2005\Settings
LibDir=c:\pads2005\Libraries
ReuseDir=c:\pads2005\PADS Projects\Reuse
CAMDir=c:\pads2005\PADS Projects\Cam

现在是
[directories]=
SystemDir=e:\pads2005\2005PADS\SDD_HOME\Programs
FileDir=e:\pads2005\PADS Projects
UserDir=e:\pads2005\Settings
LibDir=e:\pads2005\Libraries
ReuseDir=e:\pads2005\PADS Projects\Reuse
CAMDir=e:\pads2005\PADS Projects\Cam

在[directories]=后边多了一个=号.不知为什么..
其实我就是想把 =和:\中间的任意字符都给换成统一的字符比如把=c:\换成=d:\
其中=c:\中的C可能是任意的单个字符,还希望高手们给帮个忙.谢谢了.
3 发表于 2008-09-21 20:58 ·  中国 福建 漳州 联通
中级用户
★★
积分 228
发帖 125
注册 2008-08-25 19:17
17年会员
UID 124135
性别 男
状态 离线
把上面代码改成如下即可
HAT疏忽了第一行的内容,他把每行内容加上了=e:,事实上你并没有每行内容都需要替换..
@echo off
for /f "tokens=1-3 delims=:=" %%a in (a.txt) do (
if not "%%c"=="" (
>>b.txt echo.%%a=e:%%c
) else (
>>b.txt echo.%%a
)
)
4 Re 3楼 发表于 2008-09-21 21:09 ·  中国 重庆 九龙坡区 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
不是HAT疏忽了第一行的内容,而是楼主开始根本没告诉大家他的文本内容到底长什么模样^_^
论坛跳转: