【发布时间】:2019-07-30 08:33:54
【问题描述】:
可以说我有 test.txt 与这行
1
2
3
我需要批处理文件来将此文件重写为
3
2
1
在新的txt文件中
我试过这个来复制最后一行
for /f "delims=" %%A in (ttt.txt) do set last=%%A
echo %last%>>ttt_lastline.txt
这个删除最后一行
@echo off & setlocal EnableDelayedExpansion
set row=
for /F "delims=" %%j in (File.txt) do (
if defined row echo.!row!>> File.new
set row=%%j
)
但没有帮助
【问题讨论】:
-
文件多长时间?
-
@Magoo 这是 815 线
-
powershell "$c = gc test.txt; $c[$c.length..0]" > reversed.txt将是我能想到的最简单的解决方案。 -
@rojo:这个单线怎么样?:
(for /F "tokens=1*" %%b in ('set i^=1000^&(for /F "delims=" %%a in (test.txt^) do @set /A i-^=1^&echo ^ %%a^)^|sort') do @echo %%c) > reversed.txt -
所以你真的要反转文件还是要按降序排序?
标签: batch-file cmd