0

我有一个这样的文本文件

11111
2222
3333
44

我想用批处理文件把它颠倒过来

44
3333
2222
11111

任何提示高度赞赏....

4

3 回答 3

4

这将适用于合理数量的行。

@echo off
setlocal enabledelayedexpansion
set c=2000000000
for /f "delims=" %%a in (filein.txt) do (
set /a c=c-1
set "line[!c!]=%%a"
)
(for /f "tokens=1* delims==" %%a in (' set line[ ') do echo %%b)>output.txt
endlocal
于 2013-08-20T11:33:53.847 回答
1

尝试使用 Unix 工具CoreUtils for Windows):

tac filein.txt > fileout.txt
于 2013-08-20T11:54:03.313 回答
0

确保您的文本不包含". 然后:

SETLOCAL ENABLEDELAYEDEXPANSION
COPY NUL reversed_text_file.txt
FOR /F "DELIMS=*" %%l IN (your_text_file.txt) DO (
    SET "line=%%l"
    ECHO.!line!>temp_line.txt
    COPY temp_line.txt+reversed_text_file.txt
    MOVE /Y temp_line.txt reversed_text_file.txt
)

如果您不能保证有非引号字符,您应该尝试批处理以外的其他解决方案。

编辑:改进!

于 2013-08-20T14:38:15.990 回答