批处理实现过滤重复行
a.txt内容如下:
123
456
789
123
123
789
获取重复的行,并且重复的行只保留一次,处理后得到b.txt内容如下:
123
789
方法1:
@echo off REM 缺点1:无法处理特别大的文件 REM 缺点2:需要使用文件中没有出现的字符来标记变量(本例中使用的是下划线) setlocal for /f "delims=" %%i in (a.txt) do ( set /a _%%i+=1 ) (for /f "tokens=1-2 delims=_=" %%i in ('set _') do ( if %%j gtr 1 ( echo,%%i ) ))>b.txt endlocal
方法2:
@echo off setlocal enabledelayedexpansion set "PriLine=" set "DupNum=1" (for /f "delims=" %%i in ('sort a.txt') do ( if "!PriLine!" equ "%%i" ( set /a DupNum+=1 ) else ( if !DupNum! gtr 1 ( echo,!PriLine! ) set DupNum=1 ) set "PriLine=%%i" ))>b.txt if !DupNum! gtr 1 ( >>b.txt echo,!PriLine! )
方法3:
gawk "{a[$0]++}END{for(i in a)if(a[i]>1)print i}" a.txt > b.txt
方法4:(更加简洁)
gawk "a[$0]++" a.txt>b.txt
方法5:
@echo off for /f "tokens=*" %%i in (a.txt) do set #%%i=%%i (for /f "tokens=2 delims==" %%i in ('set #') do echo %%i)>b.txt
相关推荐
-
用vbscript实现从文本文件中删除所有重复行的代码
问: 您好,脚本专家!如何从文本文件中删除所有重复行? -- SW 答: 您好,SW.您知道,成为一名脚本专家便意味着开始永无止境地寻找给定问题的最终解决方案.(或者至少在我们的经理问为什么我们似乎从未真正完成什么时,我们是这么告诉他的:"老板,永无止境的寻找过程需要时间!")这就是为什么我们很高兴看到您的问题的原因.不久前 我们回答了一个关于从文本文件中删除重复名字的类似问题.我们想到的解决方案十分简单而且效果不错:只是我们不确定那是最佳解决方案.现在,很感谢您的问题,我们可以再次尝
-
ASP.NET DataTable去掉重复行的2种方法
第一种,使用Linq查询表达式,code如下 DataTable testtable = new DataTable(); testtable.Columns.Add("ID"); testtable.Columns.Add("ProductName"); testtable.Rows.Add("1", "1"); testtable.Rows.Add("1", "1"); testta
-
批处理 删除重复行的代码
复制代码 代码如下: @echo off :: 删除重复的行,但不能保留空行 :: 对不符合变量命名规则.变量个数超过限制的文本都无法正确处理 :: (echo 清除重复行后的文件内容:& echo.)>str_.txt for /f "delims=" %%i in (test.txt) do ( if not defined %%i set %%i=A & echo %%i>>str_.txt) start str_.txt
-
python统计一个文本中重复行数的方法
本文实例讲述了python统计一个文本中重复行数的方法.分享给大家供大家参考.具体实现方法如下: 比如有下面一个文件 2 3 1 2 我们期望得到 2,2 3,1 1,1 解决问题的思路: 出现的文本作为key, 出现的数目作为value,然后按照value排除后输出 最好按照value从大到小输出出来,可以参照: 复制代码 代码如下: in recent Python 2.7, we have new OrderedDict type, which remembers the order in
-
php删除文本文件中重复行的方法
本文实例讲述了php删除文本文件中重复行的方法.分享给大家供大家参考.具体分析如下: 这个php函数用来删除文件中的重复行,还可以指定是否忽略大小写,和指定换行符 /** * RemoveDuplicatedLines * This function removes all duplicated lines of the given text file. * * @param string * @param bool * @return string */ function RemoveDupl
-
批处理实现过滤重复行
a.txt内容如下: 123 456 789 123 123 789 获取重复的行,并且重复的行只保留一次,处理后得到b.txt内容如下: 123 789 方法1: @echo off REM 缺点1:无法处理特别大的文件 REM 缺点2:需要使用文件中没有出现的字符来标记变量(本例中使用的是下划线) setlocal for /f "delims=" %%i in (a.txt) do ( set /a _%%i+=1 ) (for /f "tokens=1-2 delim
-
批处理统计词频实现代码(统计重复行的数量/每行重复出现的次数)
请问批处理可以统计词频吗? 4字一行,只统计4字词组出现的频率. 如: 一丘之貉 一丝不挂 一丝不苟 一事无成 一亲对老 一分身又 一叶知秋 一叶知秋 一叶障目 一叶障目 一往无前 一往无前 一往无前 实现如下: 一丘之貉 1 一丝不挂 1 一丝不苟 1 一事无成 1 一亲对老 1 一分身又 1 一叶知秋 2 一叶障目 2 一往无前 3 解决代码 @echo off & setlocal enabledelayedexpansion for /f "delims=" %%a i
-
asp.net DataTable相关操作集锦(筛选,取前N条数据,去重复行,获取指定列数据等)
本文实例总结了asp.net DataTable相关操作.分享给大家供大家参考,具体如下: #region DataTable筛选,排序返回符合条件行组成的新DataTable或直接用DefaultView按条件返回 /// <summary> /// DataTable筛选,排序返回符合条件行组成的新DataTable或直接用DefaultView按条件返回 /// eg:SortExprDataTable(dt,"Sex='男'","Time Desc&quo
-
MySQL 如何查找删除重复行
目录 一.如何查找重复行 二.如何删除重复行 三.如何查找多列上的重复 四.错误的查询语句 五.几种正确的方法 一.如何查找重复行 第一步是定义什么样的行才是重复行.多数情况下很简单:它们某一列具有相同的值.本文采用这一定义,或许你对"重复"的定义比这复杂,你需要对sql做些修改. 本文要用到的数据样本: create table test(id int not null primary key, day date not null); insert into test(id, day
-
JS实现为排序好的字符串找出重复行的方法
本文实例讲述了JS实现为排序好的字符串找出重复行的方法.分享给大家供大家参考,具体如下: 实现这样一个需求,在一个Editplus文档中,有很多行10位的数字,这些数字已经排好序了. 比如: 1234567890 1234567891 1234567892 1234534124 1234614124 4321412414 5636373573 有什么办法能方便的找出两行至少前7位相同的数字吗? 比如,上面的数字中,能够找出 1234567890 1234567891 1234567892 <!D
-
asp正则过滤重复字符串的代码
比如 1223445677777778aabbcccccccccc 经过过滤之后就是12345678abc 复制代码 代码如下: <% '过滤重复 Function norepeat(Str) Dim RegEx If IsNull(Str) Or Str="" Then Exit Function Set RegEx=New RegExp RegEx.Global = True RegEx.IgnoreCase=
-
删除DataTable重复列,只删除其中的一列重复行的解决方法
vs2005针对datatable已经有封装好的去重复方法: 复制代码 代码如下: //去掉重复行 DataView dv = table.DefaultView; table = dv.ToTable(true, new string[] { "name", "code" }); 此时table 就只有name.code无重复的两行了,如果还需要id值则 table = dv.ToTable(true, new string[] { "id",
-
asp 正则 过滤重复字符串的代码
比如 1223445677777778aabbcccccccccc 经过过滤之后就是12345678abc 复制代码 代码如下: <% '过滤重复 Function norepeat(Str) Dim RegEx If IsNull(Str) Or Str="" Then Exit Function Set RegEx=New RegExp RegEx.Global = True RegEx.IgnoreCase=True RegEx.MultiLine = True RegEx
随机推荐
- Python 自动补全(vim)
- MySQL 5.6.14 win32安装方法(zip版)
- Oracle实现行列转换的方法分析
- 小心!AngularJS结合RequireJS做文件合并压缩的那些坑
- IIS应用池回收造成Application_Start中定时执行程序停止的问题的解决方法
- 在PHP中PDO解决中文乱码问题的一些补充
- python3 shelve模块的详解
- servlet上传文件实现代码详解(四)
- 详解MySQL下InnoDB引擎中的Memcached插件
- 微信公众号支付H5调用支付解析
- Autocomplete Textbox Example javascript实现自动完成成功
- JavaScript实现256色转灰度图
- Android触摸及手势操作GestureDetector
- Ubuntu中为Android系统实现内置Java应用程序测试Application Frameworks层的硬件服务
- SpringMVC+Mysql实例详解(附demo)
- 完美解决Java中的线程安全问题
- Android Dialog里的EdiText输入法的选择
- java 读取网页内容的实例详解
- 通过文字传递创建的图形按钮
- thinkphp使用phpmailer发送邮件的方法