操作系统:Windows 7
我需要输出两行;每个文本文件中的一个,并排。与已展示的内容类似here。
A.TXT;
1
2
3
4
5
B.txt;
A
B
C
D
E
所以我想回应一下;
1 A
2 B
3 C
4 D
5 E
答案 0 :(得分:2)
我把它弄得松了一口气,这让你有了解决这个问题的技巧。
@echo off
del file1.txt 2>nul
del file2.txt 2>nul
for %%a in (A B C D) do echo %%a>>file2.txt
for %%a in (1 2 3 4) do echo %%a>>file1.txt
@echo off
setlocal DisableDelayedExpansion
< file2.txt (
for /F "delims=" %%a in (file1.txt) do (
set file2Line=
set /P file2Line=
set "file1Line=%%a"
setlocal EnableDelayedExpansion
echo(!file1Line! !file2Line!
endlocal
)
)
pause
del file1.txt 2>nul
del file2.txt 2>nul
goto :EOF
答案 1 :(得分:0)
试试这个:
@echo off
setlocal enabledelayedexpansion
set /a count=0
For /f %%a in (A.txt) do (
set /a count=!count!+1
set A!count!=%%a
)
set count=0
For /f %%b in (B.txt) do (
set /a count=!count!+1
set B!count!=%%b
)
set recount=0
:loop
recount=%recount%+1
echo %A!recount!% %B!recount!%
if %recount% gtr %count% goto :end
goto :recount
:end
pause
exit
希望这有帮助,
你的莫娜
注意:如果A.txt
中有更多行,则会忽略它们。如果数量较少,则会显示[blank] [line from B.txt]
答案 2 :(得分:0)
GNU代码sed:
sed "s#.*#s/.*/& \&/g;n#" A.txt|sed -f - B.txt
>sed "s#.*#s/.*/& \&/g;n#" A.txt|sed -f - B.txt 1 A 2 B 3 C 4 D 5 E