中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-12 22:20
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何批处理里替换某个文档中的字符?高手请指教! 查看 940 回复 6
楼 主 如何批处理里替换某个文档中的字符?高手请指教! 发表于 2009-06-20 12:32 ·  中国 北京 电信
初级用户
积分 25
发帖 20
注册 2009-06-16 23:10
17年会员
UID 147569
状态 离线
举例如:某个记事本文档中包含了很多诸如“:”(冒号)之类的符号,想写个批处理把它替换成其他字符,请高手指教,谢谢谢谢!
当然我也知道记事本里有替换功能,但还是想学习一下dos下的操作方法!
谢谢各位了!
2 发表于 2009-06-20 15:08 ·  中国 江西 赣州 安远县 电信
银牌会员
★★★★
积分 2,025
发帖 1,122
注册 2007-09-05 20:15
18年会员
UID 96653
性别 男
状态 离线
@echo off
setlocal disabledelayedexpansion
set 文本="g:\我的文档\桌面\a.txt"
set "旧=:"
set "新=冒号"
:: 旧字串和新字串不能含有英文感叹号 !

(for /f "eol= delims=" %%a in ('findstr /n .* %文本%') do (
set var=%%a
setlocal enabledelayedexpansion
if "!var:*:=!"=="" (echo;) else (
set var=!var:*:=!
echo;!var:%旧%=%新%!
)
endlocal
))>"%temp%\txt_new"
move "%temp%\txt_new" %文本%
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
jwm112377 +1 2009-06-21 01:46
3 发表于 2009-06-20 16:15 ·  中国 吉林 延边朝鲜族自治州 延吉市 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
如果要处理的文件中含有大量敏感字符和乱码,推荐使用第三方的sed或fr命令。。。

http://www.cn-dos.net/forum/viewthread.php?tid=24210&fpage=2
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
jwm112377 +1 2009-06-21 01:46
4 发表于 2009-06-20 20:17 ·  中国 北京 联通
银牌会员
★★★★
[b]看你妹啊[/b]
积分 1,488
发帖 1,357
注册 2006-05-20 12:00
20年会员
UID 55770
状态 离线
咔咔,你推荐SED,
我推荐 FR
FR 比SED更简单更易学易用
懂正则表达式的话,看下说明就差不多了

FR 下载:http://baiy.cn/utils/fr/index.htm

FR 查找到: 替换成XXXX :
fr -f:":" -t:"xxx" a.txt


[ Last edited by yishanju on 2009-6-20 at 20:20 ]
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
jwm112377 +1 2009-06-22 09:53

有问题请发论坛或者自行搜索,再短消息问我的统统是SB
5 发表于 2009-06-20 22:59 ·  中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
我推荐sed和wfr都学学
哪个顺手就用哪个
艺多不压身
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
jwm112377 +1 2009-06-22 09:53
6 发表于 2009-06-21 01:40 ·  中国 北京 电信
初级用户
积分 25
发帖 20
注册 2009-06-16 23:10
17年会员
UID 147569
状态 离线
谢谢各位高手,我学习一下。
7 发表于 2010-01-01 14:06 ·  中国 福建 福州 电信
初级用户
★★
积分 119
发帖 59
注册 2008-11-21 14:07
17年会员
UID 131656
性别 男
状态 离线
fr 提示在纯dos下无法使用要如何解决呀。。
论坛跳转: