找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 18640|回复: 2

[文本处理] 批处理怎样提取“Serial”列不重复值或者只有一个重复值所在行,生成新的文件

[复制链接]
发表于 2023-8-9 21:31:25 | 显示全部楼层 |阅读模式
文件夹内很多csv文件, 提取文件内“Serial”列不重复值或者只有一个重复值所在行,生成新的文件.xlsx
附件上传不了, 下面是csv文件内容

Date        ModelName                         MachineID        LotNo        Tester Serial        Serial        Test Pass        XY        2D ID
2023/7/12 1:44        POR_AD6_B        ETS110        6.00003E+11        T000010303        18        1                2.60077E+11
2023/7/12 2:02        POR_AD6_B        ETS110        6.00003E+11        T000010303        241        1                2.60077E+11
2023/7/12 2:03        POR_AD6_B        ETS110        6.00003E+11        T000010303        269        1                2.60077E+11
2023/7/12 2:03        POR_AD6_B        ETS110        6.00003E+11                                269        3                2.60077E+11
2023/7/12 2:05        POR_AD6_B        ETS110        6.00003E+11                                313        3                2.60077E+11
2023/7/12 2:05        POR_AD6_B        ETS110        6.00003E+11                                324        3                2.60077E+11
2023/7/12 2:08        POR_AD6_B        ETS110        6.00003E+11                                413        3                2.60077E+11
2023/7/12 2:12        POR_AD6_B        ETS110        6.00003E+11                                413        3                2.60077E+11
2023/7/12 2:16        POR_AD6_B        ETS110        6.00003E+11                                413        3                2.60077E+11
2023/7/12 2:17        POR_AD6_B        ETS110        6.00003E+11                                413        3                2.60077E+11

提取serial号不重复的
Date        ModelName                         MachineID        LotNo        Tester Serial        Serial        Test Pass        XY        2D ID
2023/7/12 1:44        POR_AD6_B        ETS110        6.00003E+11        T000010303        18        1                2.60077E+11
2023/7/12 2:02        POR_AD6_B        ETS110        6.00003E+11        T000010303        241        1                2.60077E+11
2023/7/12 2:05        POR_AD6_B        ETS110        6.00003E+11                                313        3                2.60077E+11
2023/7/12 2:05        POR_AD6_B        ETS110        6.00003E+11                                324        3                2.60077E+11


提取serial号不重复的和只有一个重复的
Date        ModelName                         MachineID        LotNo        Tester Serial        Serial        Test Pass        XY        2D ID
2023/7/12 1:44        POR_AD6_B        ETS110        6.00003E+11        T000010303        18        1                2.60077E+11
2023/7/12 2:02        POR_AD6_B        ETS110        6.00003E+11        T000010303        241        1                2.60077E+11
2023/7/12 2:03        POR_AD6_B        ETS110        6.00003E+11        T000010303        269        1                2.60077E+11
2023/7/12 2:03        POR_AD6_B        ETS110        6.00003E+11                                269        3                2.60077E+11
2023/7/12 2:05        POR_AD6_B        ETS110        6.00003E+11                                313        3                2.60077E+11
2023/7/12 2:05        POR_AD6_B        ETS110        6.00003E+11                                324        3                2.60077E+11
发表于 2023-8-9 21:52:04 | 显示全部楼层
回复 1# luke2


    请把文件上传到网盘
发表于 2023-8-10 04:04:08 | 显示全部楼层
把上面的文本中的空格整理成Tab后(不准确,需要上传csv),大概用powershell写了一个,如果安装了importexcel模块可以直接export-excel,没装就需要用com操作excel打开csv另存xlsx
  1. cat .\a.csv | ConvertFrom-Csv -Delimiter "`t" | group Serial | % {if($_.Count -le 2){$_.Group}} | Export-Csv out.csv
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 15:38 , Processed in 0.026887 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表