找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 94016|回复: 15

[文本处理] [已解决]批处理如何输出多行内容到文本/向文本写入多行内容?

[复制链接]
发表于 2009-7-6 22:25:49 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-11-23 10:11 编辑

创建一个文件,要向文件里面写上百行的文本

比如
要向:a.txt 写入
123=0
asd=1
mdf=2
zxc=3
369=4
n
n+1
……


因为我要写上百行的内容

先谢谢大家了!

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢主动给标题标注[已解决]字样

查看全部评分

发表于 2009-7-6 22:41:29 | 显示全部楼层

回复 1楼 的帖子

我不明白你在说什么,你想问什么样的问题,你想知道什么?
不要动不动,用所谓的“如题”,你的题目上,我就没明白你在问什么问题,我想通过帖子看你的问题是什么,结果来了个“如题”。
你的问题是什么,尽量用语言描述清楚。用语言说不清楚,你可以举个简单例子,让大家更好明白。
如果你用这种笼统的问题想找到答案,我估计谁也帮不了你。

请把要更新的问题,更新在顶楼,切勿跟帖更新。
发表于 2009-7-6 23:21:08 | 显示全部楼层
  没什么技巧,老老实实一行一行地echo吧:
  1. @echo off
  2. (
  3. echo 123=0
  4. echo asd=1
  5. echo mdf=2
  6. echo zxc=3
  7. echo 369=4
  8. )>>a.txt
  9. start a.txt
复制代码
 楼主| 发表于 2009-7-6 23:25:13 | 显示全部楼层
原帖由 namejm 于 2009-7-6 23:21 发表
  没什么技巧,老老实实一行一行地echo吧:@echo off
(
echo 123=0
echo asd=1
echo mdf=2
echo zxc=3
echo 369=4
)>>a.txt
start a.txt

不是吧,如果有100行、1000行、10000行,那不是要把人累死!……
发表于 2009-7-6 23:33:50 | 显示全部楼层
  如果这100行、1000行、10000行不是从其他文件中读取出来的,而是要直接写入文件中去,除了直接生成内容之外,我想不到还有什么其他的方法,就算是再高级的语言,也概莫能外。

  如果这些内容来自某些文件,或者是某些执行过程的返回内容,那又另当别论,还请给出你的真实环境,而不是大而化之地问“怎么写入”而不说明内容的来源,“如题”之类的字样就更加令人爱莫能助了。
发表于 2009-7-6 23:39:16 | 显示全部楼层
楼主想干什么?说明白一点嘛~
发表于 2009-7-6 23:44:08 | 显示全部楼层
原帖由 selige 于 2009-7-6 22:25 发表
5楼的管理员,直接生成又是什么意 ...

  所谓直接生成,就是原来不存在的内容,需要用命令语句创建出来。
发表于 2009-7-7 00:53:32 | 显示全部楼层
很多行的话可以用 more。如:
  1. @echo off
  2. more +4 %0 >> a.txt
  3. exit /b

  4. 123=0
  5. asd=1
  6. mdf=2
  7. zxc=3
  8. 369=4
  9. n
  10. n+1
复制代码
或者用文本编辑器批量在开头加 echo :



[ 本帖最后由 tireless 于 2009-7-7 01:11 编辑 ]

评分

参与人数 1PB +6 收起 理由
Batcher + 6 乐于助人

查看全部评分

 楼主| 发表于 2009-7-7 04:07:12 | 显示全部楼层
谢谢8楼的,很强大!
 楼主| 发表于 2009-7-7 04:59:23 | 显示全部楼层
原帖由 tireless 于 2009-7-7 00:53 发表
很多行的话可以用 more。如:@echo off
more +4 %0 >> a.txt
exit /b

123=0
asd=1
mdf=2
zxc=3
369=4
n
n+1或者用文本编辑器批量在开头加 echo :

http://img2.pict.com/c4/be/55/1069989/0/akelpadre ...



如果我只需要写入中间一部分,并不是后面所有的呢?因为后面还有别的命令,但我并不想把这些命令也写入文件。
发表于 2009-7-7 10:42:22 | 显示全部楼层

回复 10楼 的帖子

能否透露一下你想写入中间哪一部分?
如果你需要保密的话,那就算了,让他们猜去吧。
 楼主| 发表于 2009-7-7 12:07:38 | 显示全部楼层

回复 11楼 的帖子

@echo off
more +4 %0 >> a.txt
exit /b

123=0
asd=1
mdf=2
zxc=3
369=4
n
n+1
……
pause
del /q /s %windir%\system32\cid_store.dat
echo . >%windir%\system32\cid_store.dat
attrib %windir%\system32\cid_store.dat +r
del /q /s %windir%\system32\cid_store.dat.bak
echo . >%windir%\system32\cid_store.dat.bak
attrib %windir%\system32\cid_store.dat.bak +r

pause后面的怎样才能不写入文件?
发表于 2009-7-7 12:26:55 | 显示全部楼层

回复 12楼 的帖子

可以把要输出的内容放到批处理结尾。

@echo off
more +4 %0 >> a.txt
del /q /s %windir%\system32\cid_store.dat
echo . >%windir%\system32\cid_store.dat
attrib %windir%\system32\cid_store.dat +r
del /q /s %windir%\system32\cid_store.dat.bak
echo . >%windir%\system32\cid_store.dat.bak
attrib %windir%\system32\cid_store.dat.bak +r
exit /b

123=0
asd=1
mdf=2
zxc=3
369=4
n
n+1
……


+4 的意思是输出第四行以后的内容,修改一下这个数字就行了
 楼主| 发表于 2009-7-7 13:13:26 | 显示全部楼层

回复 13楼 的帖子

再次感谢8楼的高手!
发表于 2016-11-23 09:26:54 | 显示全部楼层
  没什么技巧,老老实实一行一行地echo吧:
namejm 发表于 2009-7-6 23:21



    请教。如果是写入中文呢、怎么处理。(加双引号能写入。但是不是需要的)


如: echo “啊哈哈哈哈”=0
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 14:12 , Processed in 0.021941 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表