![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 20:00 |
共 47,811 主题排行 / 349,896 发帖 / 今日 1 篇 / 48,254 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [推荐]dos批处理高级教程精选合编 |
| 可打印版本 848 / 3 |
| 第1楼 xugq | 发表于 2008-09-21 20:37 |
| 初级用户 发帖 24 积分 56 | |
|
[推荐]dos批处理高级教程精选合编 今天有幸得到了论坛中HAT朋友的大力帮助,再次感谢.我想什么事总是靠别人是不行的.我决定现在开始学习下DOS 的批处理命令.这是刚从网上找到的部分资料
很高兴能和大家分享.原来论坛上有朋友贴过.我再发个PDF 格式的. http://upload.cn-dos.net/img/778.rar |
|
| 第2楼 xugq | 发表于 2008-09-21 20:43 |
| 初级用户 发帖 24 积分 56 | |
|
另外还有个问题想再麻烦下大家
刚刚使用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楼 hackate | 发表于 2008-09-21 20:58 |
| 中级用户 发帖 125 积分 228 | |
|
把上面代码改成如下即可
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楼 HAT | 发表于 2008-09-21 21:09 |
| 版主 发帖 5,017 积分 9,023 | |
|
Re 3楼 不是HAT疏忽了第一行的内容,而是楼主开始根本没告诉大家他的文本内容到底长什么模样^_^
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |