标题: [文本处理] 关于 【练习-001】批处理实现两文本同行交替输出的疑问??? [打印本页]
作者: btsome 时间: 2012-8-23 01:48 标题: 关于 【练习-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- @echo off
- for /f "delims=" %%i in (1.txt) do set /a n+=1&call,set "_%%n%%=%%i"
- for /f "delims=" %%i in (2.txt) do set /a m+=1&call,set ".%%m%%=%%i"
- if %n% gtr %m% (set "num=%n%") else (set "num=%m%")
- for /l %%i in (1,1,%num%) do (
- if defined _%%i call,echo %%_%%i%%
- if defined .%%i call,echo %%.%%i%%
- )
- pause>nul
复制代码
不知道这个地方的"_%%n%%=%%i" ".%%m%%=%%是什么意思??- . 这个两个符号这里有特殊的含义么?????
作者: CrLf 时间: 2012-8-23 01:58
只是两组模拟数组的变量,把它看成数组的话可以这样解释:先将 1.txt 逐行定义为一个名为 _ 的数组 (长度为文本行数),再将 2.txt 逐行定义为数组 . ,然后交替输出 数组_ 和 数组. 的元素
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |