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

[问题求助] PowerShell怎样根据区域字段重复去重复行?

本帖最后由 娜美 于 2023-8-3 14:46 编辑

Get-Content 1.txt | sort -Unique -k4  -k5 | sc  2.txt
根据区域字段重复,去重复行, 这样写似乎不对, 请帮忙指正一下
  1. 1 2 3 4
  2. 1 2 3 4 5
  3. 1 2 4 0
复制代码
8/3 14:33补充
根据列数的字段是否为重复   空格为分隔符 例如如果第3 and 4列字段重复了  只要其中任意一行就行
out.txt
1 2 3 4 5
1 2 4 0

回复 2# Batcher


    应该是这样吧
out.txt
1 2 3 4 5
1 2 4 0

TOP

本帖最后由 娜美 于 2023-8-3 13:34 编辑

回复 5# Five66


    根据列数  例如第3 and 4列字段重复了
2 5 6 3 7
0 4 6 3 9
7 9 6 5 5
4 6 2 3 4

out.txt
0 4 6 3 9
7 9 6 5 5
4 6 2 3 4

TOP

回复 4# Nsqs


    嗯结果是对, 但不过为什么要比awk写得更复杂呢, awk '!a[$3,$4]++'   就不能写出比awk更简化的吗

TOP

本帖最后由 娜美 于 2023-8-3 14:45 编辑

回复 9# Nsqs


   好 好 好  好哥哥  不需要过度紧张嘛   如果1楼不够清楚, 不能理解透彻     那我补充一下

TOP

本帖最后由 娜美 于 2023-8-3 16:19 编辑

回复 12# Five66


    哥哥你这个理解能力就很好嘛, 但为什么这样就不行了呢
Get-Content 1.txt | sort  -unique {$_.split(' ')[1,2]} | sc  2.txt
  1. 1   2    3
  2. 1   2    3
  3. 1   0    3
复制代码

TOP

本帖最后由 娜美 于 2023-8-3 18:33 编辑

回复 15# Five66

1   2    3
1   0    3
1   2    3
Get-Content 1.txt | sort  -unique {$_.split(' ')[1,2] -join ''} | sc  2.txt
执行后结果少了一行
    1   2    3


不是应该得到吗,
1   2    3
1   0    3

TOP

回复 18# Five66


    明白了 谢谢哥哥

TOP

还有种不进行排序的,可能更快更直观更自由点
Five66 发表于 2023-8-3 20:57



嗯嗯,  如果要在最末尾行再留空一行或2行呢

TOP

本帖最后由 娜美 于 2023-8-3 22:22 编辑

回复 22# Five66


   

Get-Content 1.txt | sort  -unique {($_ -split '   ')[1,2] -join ''} | cmd /c "echo.>>2.txt"这样不行的

TOP

本帖最后由 娜美 于 2023-8-4 16:56 编辑

回复 24# Five66

谢谢哥哥指点

TOP

返回列表