4 windows
请帮助我,如何在 Windows 中批量反转/排序文本文件中的行?
示例:
我有这种格式的文本
15/04/2013-07:10:30 拉拉拉
15/04/2013-07:10:30 文本文本
15/04/2013-07:10:30 1 拉拉文本
15/04/2013-07:10:36 8 text lala X
15/04/2013-07:10:36 A text lala 1
17/04/2013-10:11:12 B bext lala 4
...(其他行)
我需要以这种格式反转它
17/04/2013-10:11:12 B bext lala 4
15/04/2013-07:10:36 A text lala 1
15/04/2013-07:10:36 8 text lala X
15/04/2013 -07:10:30 1 拉拉文本
15/04/2013-07:10:30 文本文本
15/04/2013-07:10:30 拉拉
...(其他行)
感谢您的帮助!
小智 13
也许这不是最漂亮的方式,但它很简单,可以随心所欲地工作。
echo. > output.txt
for /f "delims=@" %%j in (yourfile.txt) do (
type output.txt > tmp
echo %%j > output.txt
type tmp >> output.txt
)
del tmp
Run Code Online (Sandbox Code Playgroud)
如果要处理大文件,请不要使用上面的示例。这确实是非常耗时和资源消耗的解决方案。这里有我刚准备好的更快版本:
setlocal enabledelayedexpansion
set I=0
for /F "tokens=*" %%k in (yourfile.txt) do (
set /A I=!I! + 1
set LINE!I!=%%k
)
for /L %%c in (!I!,-1,1) do (
echo !LINE%%c! >> out.txt
)
Run Code Online (Sandbox Code Playgroud)
在我的机器上反转 40kb 文件(10k 行,每行 1 个字符)大约需要 1 分钟。记住它仍然只是批处理。有许多更好的脚本或编程语言可以更好地执行该操作。
归档时间: |
|
查看次数: |
10176 次 |
最近记录: |