|
|
发表于 2023-5-10 12:01:00
|
显示全部楼层
回复 1# gg20100109
如不介意第3方工具gawk( http://bcn.bathome.net/tool/4.1.0/gawk.exe )
命令行窗口方式执行:
- gawk "NR==1{printf(\"%s\",$0);a=0;b=$0;next}++b==$0{a=1;next}a{printf(\"-%s\",b-1)}{printf(\"\n%s\",$0);a=0;b=$0}END{if(a){printf(\"-%s\",b)}}" input.txt>output.txt
复制代码 写进脚本方式执行
- gawk "NR==1{printf(\"%%s\",$0);a=0;b=$0;next}++b==$0{a=1;next}a{printf(\"-%%s\",b-1)}{printf(\"\n%%s\",$0);a=0;b=$0}END{if(a){printf(\"-%%s\",b)}}" input.txt>output.txt
复制代码 注意,楼主的数据样本中缺少了10000005项,故上述脚本的实际结果为:
10000001-10000004
10000006
11000008-11000009
12000010
13000011
14000013 |
|