标题: [代码合集] [已解决]批处理怎样实现两文本同行交替输出? [打印本页]
作者: ddddxxxxx 时间: 2011-7-29 18:07 标题: [已解决]批处理怎样实现两文本同行交替输出?
感谢论坛的斑竹,拉基freedom(ps:名字很性感)还有各位出过力的兄弟们。你们付出让我们新人有了个这么好的学习批处理的资料。
今天刚做第一题就出现问题,帮我找找哪里有问题。刚接触批处理不久,多多指教。- echo on
- SetLocal EnableDelayedExpansion
- set n1=0
- for /f %%a in (a.txt) do (
- echo %%a>>c.txt
- set /a n1=n1+1
- for /f %%b in (b.txt) do (
- set n2=0
- set /a n2=n2+1
- if !n2!==!n1! (echo %%b>>c.txt)
- if !n2! gtr !n1! (goto end)
- )
- :end
- )
- echo.
- pause
复制代码
我的解题思路:for嵌套一个for语句,给两个for语句分别定义变量n1
和n2控制输出:n2=n1时,输出到c.txt;
n2>n1时,退出第二个for循环;
n2<n1时,不做任何处理顺序执行。
但我运行后,没结果:[attach]4186[/attach]。
各位帮我看看我代码哪里有错。
题如下:练习-001】批处理实现两文本同行交替输出
有两个文本如下(实际中并不知道两文本各有多少行):
文本1.txt
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
ccccccccccccccccccccccccccccccccccccccc
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
ggggggggggggggggggggggggggggggggggggggg
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
文本2.txt
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
要求用批处理输出如下(两文本交替输出):
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh
ccccccccccccccccccccccccccccccccccccccc
iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
ggggggggggggggggggggggggggggggggggggggg
nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn
wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz
作者: tmplinshi 时间: 2011-7-29 19:44
- @echo off
- setlocal enabledelayedexpansion
- (
- for /f "delims=" %%a in (a.txt) do (
- echo %%a
- set var=
- set /p var=
- if defined var echo !var!
- )
- ) <b.txt
- pause
复制代码
参考:
批处理利用set /p与重定向输入分行获取文本内容
http://bathome.net/thread-13327-1-6.html
作者: CUer 时间: 2011-7-29 20:36
不要把标签放在for循环内部
作者: ddddxxxxx 时间: 2011-7-30 19:26
回复 2# tmplinshi 谢谢你的代码。我会好好学学你的方法 。但我很想找出我自己的问题,一步一步这样学的踏实。
作者: CUer 时间: 2011-7-30 19:40
回复 4# ddddxxxxx
3楼不是帮你指出一个问题吗
作者: ddddxxxxx 时间: 2011-7-31 08:51
回复 5# CUer
恩 你说的很对。我找到详细的讲解了http://www.bathome.net/redirect.php?fid=5&tid=5369&goto=nextnewset谢谢。
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |