中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-16 09:22
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何在批处理中实现对文本文档的每一行开头或者末尾加... 查看 1,083 回复 3
楼 主 如何在批处理中实现对文本文档的每一行开头或者末尾加... 发表于 2006-04-26 15:37 ·  中国 湖北 武汉 电信
新手上路
积分 18
发帖 5
注册 2006-04-26 15:04
UID 54491
状态 离线
我想在一个文本文档的每一行的开头和结尾加上特定的字符串,请问如何实现?
2 发表于 2006-04-26 15:52 ·  中国 北京 鹏博士BGP
中级用户
★★
积分 404
发帖 179
注册 2006-03-30 14:44
UID 53056
状态 离线
用文件做中转

先生成文件 A 含第一行
再用>>追加B到A
再用>>追加结尾到A

A为最终文档
3 发表于 2006-04-27 00:57 ·  中国 辽宁 锦州 中移铁通
荣誉版主
★★★
积分 1,338
发帖 356
注册 2005-07-15 12:09
UID 40733
性别 男
状态 离线
NT 环境下可以简单的这样实现
比如在文本行前后分别添加 start 与 end
for /f "delims=" %i in (test.txt) do @echo start %i end

但这种处理方式有许多的缺陷如会删除空行并且执行速度很慢。
如果能够使用第三方工具的话试试 sed
sed "/./s/\(.*\)/start \1 end/" test.txt

可以这样实现
sed 下载地址:http://www.student.northpark.edu/pemente/sed/gsed407x.zip
  ☆开始\运行 (WIN+R)☆
%ComSpec% /cset,=何奈无── 。何奈可无是原,事奈无做人奈无&for,/l,%i,in,(22,-1,0)do,@call,set/p= %,:~%i,1%<nul&ping/n 1 127.1>nul

4 发表于 2006-04-27 09:29 ·  中国 湖北 武汉 电信
新手上路
积分 18
发帖 5
注册 2006-04-26 15:04
UID 54491
状态 离线
真诚的谢谢楼上的两位兄弟了~受教。
论坛跳转: