楼 主
如何批处理里替换某个文档中的字符?高手请指教!
发表于 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" %文本%
第 3 楼
发表于 2009-06-20 16:15 · 中国 吉林 延边朝鲜族自治州 延吉市 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
第 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 ]
有问题请发论坛或者自行搜索,再短消息问我的统统是SB
第 5 楼
发表于 2009-06-20 22:59 · 中国 重庆 电信
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
19年会员
UID 89899
性别 男
状态 离线
我推荐sed和wfr都学学
哪个顺手就用哪个
艺多不压身
第 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
性别 男
状态 离线
论坛跳转: