Board logo

标题: [文本处理] 批处理如何将一txt文本内容倒序排列/反转输出 [打印本页]

作者: nuonuo_2012    时间: 2015-7-6 14:13     标题: 批处理如何将一txt文本内容倒序排列/反转输出

本帖最后由 pcl_test 于 2016-11-9 17:40 编辑

各位大神,請問如何將一個文本倒序排列

比如:a.txt 如下
http://C10000&qPONum=40145285&qReqNum=1657657
http://C10000&qPONum=40145522&qReqNum=1660241
http://C10000&qPONum=40145699&qReqNum=1661285
http://C10000&qPONum=40146389&qReqNum=1669302
http://C10000&qPONum=40146761&qReqNum=1671682
http://C10000&qPONum=40144121&qReqNum=1673064
http://C10000&qPONum=40146840&qReqNum=1673089
http://C10000&qPONum=40146389&qReqNum=1669302
http://C10000&qPONum=40146389&qReqNum=1673180
http://C40000&qPONum=2122369&qReqNum=1673512
http://C10000&qPONum=40146868&qReqNum=1673505

轉成b.txt (原a.txt,第一行變為最後一行,原第二行變成倒數第二行,以此類推,最終完成整個文本的行倒序排列)
http://C10000&qPONum=40146868&qReqNum=1673505
http://C40000&qPONum=2122369&qReqNum=1673512
http://C10000&qPONum=40146389&qReqNum=1673180
http://C10000&qPONum=40146389&qReqNum=1669302
http://C10000&qPONum=40146840&qReqNum=1673089
http://C10000&qPONum=40144121&qReqNum=1673064
http://C10000&qPONum=40146761&qReqNum=1671682
http://C10000&qPONum=40146389&qReqNum=1669302
http://C10000&qPONum=40145699&qReqNum=1661285
http://C10000&qPONum=40145522&qReqNum=1660241
http://C10000&qPONum=40145285&qReqNum=1657657
感謝~
作者: Batcher    时间: 2015-7-6 14:25

http://bbs.bathome.net/thread-4127-1-1.html
作者: pcl_test    时间: 2015-7-6 18:48

本帖最后由 pcl_test 于 2016-7-15 10:12 编辑
  1. //&cls&dir /a-d/b "测试.txt"|cscript -nologo -e:jscript "%~f0"&pause&exit
  2. function reFile(file){
  3.     var fso = new ActiveXObject("Scripting.FileSystemObject");
  4.     var f1 = fso.OpenTextFile(file, 1);
  5.     var f2 = fso.CreateTextFile("$NEW_"+file, 2, true);
  6.     try{f2.Write(f1.ReadALL().split("\r\n").reverse().join("\r\n"));}catch(e){}
  7.     f1.Close();
  8.     f2.Close();
  9. }
  10. while(!WSH.StdIn.AtEndOfStream)reFile(WSH.StdIn.ReadLine());
  11. WSH.echo("Done");
复制代码

作者: CrLf    时间: 2015-7-6 20:30

一句话行逆序:
  1. @sort /+65535 a.txt >b.txt
复制代码
为毛这些很爽的技巧平时总是用不到
作者: pcl_test    时间: 2016-11-9 17:35

本帖最后由 pcl_test 于 2016-11-9 17:38 编辑
  1. powershell -c "$a=gc '文本.txt';[array]::Reverse($a);$a"
  2. pause
复制代码
  1. powershell -c "$a=gc '文本.txt';($a.length-1)..0|%%{$a[$_]}"
  2. pause
复制代码





欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2