中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-02 18:00
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请教: 如何添加字符到文本文件中指定的行里 查看 1,215 回复 4
楼 主 请教: 如何添加字符到文本文件中指定的行里 发表于 2006-12-18 10:20 ·  中国 广西 柳州 鱼峰区 电信
高级用户
★★★
积分 915
发帖 309
注册 2002-12-22 00:00
23年会员
UID 567
性别 男
状态 离线
▲在文件A.TXT里已经有字符:
12345

▲用批处理执行命令:
ECHO 6789 >>A.TXT

▲这时打开A.TXT得到的结果是:
123456789

▲而我想要的效果是:
12345
6789

▲也就是说使字符添加在最后新的一行,而不是跟在最后一行字符后面?


先谢!
2 发表于 2006-12-18 11:33 ·  中国 广东 东莞 电信
银牌会员
★★★
积分 1,179
发帖 442
注册 2006-09-09 22:47
19年会员
UID 62249
状态 离线
方法有很多种。
方法一。先在12345后回车然后在使用ECHO 6789 >>A.TXT这样就在不同行。
方法二。如果不想手动添加,那么也可以使用ECHO命令来完成。在使用ECHO 6789 >>A.TXT前先使用ECHO. >>A.TXT也可以实现,实际上和方法一完全一样,因为ECHO.实际上就是加入空白行,相当于在12345后回车。
3 发表于 2006-12-18 11:46 ·  中国 广西 柳州 鱼峰区 电信
高级用户
★★★
积分 915
发帖 309
注册 2002-12-22 00:00
23年会员
UID 567
性别 男
状态 离线
非常感谢!我刚刚也试到了你这一步,却忘了在ECHO后面加个点,结果变成这样:

执行批处理:
ECHO >> A.txt
ECHO 6789 >> A.txt

A.TXT的内容:
12345 ECHO 处于打开状态。
6789

呵呵...

再次谢谢!
4 发表于 2006-12-18 11:47 ·  中国 广东 电信
荣誉版主
★★★★
batch fan
积分 5,226
发帖 1,737
注册 2006-03-10 00:38
20年会员
UID 51697
来自 成都
状态 离线
  2F的第二种方法会产生空行。

  提供另外一种方法:用批处理把A.TXT里的内容读到另外的文本中,然后再把6789追加到新文本末尾。
尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
5 发表于 2006-12-19 09:43 ·  中国 广西 柳州 鱼峰区 电信
高级用户
★★★
积分 915
发帖 309
注册 2002-12-22 00:00
23年会员
UID 567
性别 男
状态 离线
楼上的办法可行,在此前我就一直是用此法:

▲在文件A.TXT里已经有字符:
12345

▲在文件B.TXT里有字符:
<空行>
6789

▲用批处理执行命令:
COPY /b A.TXT+B.TXT A.TXT

▲于是在文件A.TXT里的字符就变成:
12345
6789

▲如果在文件B.TXT的字符里的首行不是<空行>,则A.TXT的结果将是:
123456789

(此法须先编辑好文件B.TXT)
论坛跳转: