[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 WHY 于 2023-6-6 09:38 编辑

bat+JS 试试
  1. @if(0)==(0) echo off
  2. pushd "%~dp0"
  3. type 1.txt | cscript //nologo //e:jscript "%~f0" > 2.txt
  4. pause & exit/b
  5. @end
  6. var map = {};
  7. var num = 100000000;
  8. var str = WSH.StdIn.ReadAll();
  9. var arr = str.replace(
  10.     /^(\S+)[^\r\n]*(?=\r\n|$)/mg,
  11.     function(s0, s1){
  12.         if (!map.hasOwnProperty(s0)){
  13.             map[s0] = true;
  14.             return s1 + ++num + ' ' + s0;    //每一行添加数字
  15.         } else {
  16.             return '';  //去重复
  17.         }
  18.     }
  19. ).split('\r\n').sort();
  20. str = arr.join('\r\n').replace(/^\S+ /mg, '');     //删掉每一行添加的数字
  21. str = str.replace(/^(?:\r\n)+/, '');               //删掉开头的回车换行
  22. WSH.Echo(str);
复制代码
1

评分人数

    • 77七: 乐于助人技术 + 1

TOP

返回列表