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

[文本处理] 批处理无法循环输出指定内容到同一文本是什么原因

[复制链接]
发表于 2016-10-10 17:30:48 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-10-10 20:42 编辑

小学一年级水平 求教
代码如下
  1. :1
  2. echo 2>>1.txt
  3. type 1.txt>>1.txt
  4. goto 1
复制代码
如果1.txt为空文本就写不出数据 如果是非空文本则会将内容无限循环复制粘贴 不是很懂这个原理 难道不该写出22222222222么

评分

参与人数 1PB -2 收起 理由
pcl_test -2 勿发笼统无意义的标题

查看全部评分

发表于 2016-10-10 17:54:40 | 显示全部楼层
回复 1# tui哈朗
  1. echo 单个数字直接跟>就会当成流作废
复制代码
发表于 2016-10-10 18:44:57 | 显示全部楼层
  1. :1
  2. >>1.txt echo 2
  3. >>1.txt type 1.txt
  4. goto 1
复制代码
发表于 2016-10-10 19:57:07 | 显示全部楼层
本帖最后由 Bella 于 2016-10-10 20:11 编辑

因为echo会添加换行符
变量长度貌似不能超过8180
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set s=2
  4. for /l %%i in (1,1,12) do set s=!s!!s!
  5. echo %s%>o.txt
复制代码
 楼主| 发表于 2016-10-10 21:49:15 | 显示全部楼层
回复 2# happy886rr


    能具体说说么 如果我的文本1.txt非空这个命令就可以输出 原因何在呢
比如 我得文本里是123 这个批处理命令就会无限循环输出123123123123... ...
 楼主| 发表于 2016-10-10 21:51:40 | 显示全部楼层
回复 3# GNU


    谢过大神 能简单讲讲为什么我用的代码不行呢?
发表于 2016-10-11 07:19:16 | 显示全部楼层
回复 6# tui哈朗


    2L不是已经说得很清楚了吗?重定向用法不对
发表于 2016-10-11 08:37:07 | 显示全部楼层
回复 6# tui哈朗

1是STDOUT,2是STDERR
http://bbs.bathome.net/thread-3296-1-1.html
 楼主| 发表于 2016-10-11 09:40:14 | 显示全部楼层
回复 8# GNU


    多谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 07:26 , Processed in 0.025353 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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