【发布时间】:2020-05-01 19:01:55
【问题描述】:
文件.txt
test (CODE:700|SIZE:2356)
asdasdad (CODE:700|SIZE:124)
xcvxcva (CODE:700|SIZE:8974)
asdavasdasdasd (CODE:700|SIZE:124)
link-categories (CODE:700|SIZE:8974)
edit (CODE:700|SIZE:124)
我需要命令获取所有重复的SIZE: 值,然后删除所有重复的行,除了一行之外,所有重复的行都有这个值,我的意思是 输出 应该是这样的:
test (CODE:700|SIZE:2356)
xcvxcva (CODE:700|SIZE:8974)
asdavasdasdasd (CODE:700|SIZE:124)
我在Remove duplicate line only contain specific string 中找到了这个命令sed '/SIZE:124/,+1 d' file.txt
但是这个命令删除了所有行,我需要的是删除除一行之外的重复行 + 这个命令不会搜索重复的 SIZE: 值,所以它不起作用!
我需要的是:
- 搜索重复的
SIZE:值,如上面的124! - 如果可以的话,所有行都有这个值删除它,除了一行或两行。
【问题讨论】:
-
在这样的情况下,我们鼓励用户添加他们为解决自己的问题而付出的努力,请在您的问题中添加相同的内容,然后让我们知道。
-
awk '!seen[$2]++' file.txt