gpt4 book ai didi

Linux/unix 重名

转载 作者:太空宇宙 更新时间:2023-11-04 04:41:08 25 4
gpt4 key购买 nike

我需要做的是,检查重复的域名并查找是否有。到目前为止,我尝试了很多 grep、awk、sort、uniq 命令,但无法解决这个问题,我感觉它很简单,但无法实现。附注如果我使用uniq -c我在这个文件中得到了一个巨大的字符串列表,我看到它有多少个重复项以及它的数字字符串。

从我正在使用的文件中添加 20 行

1,google.com
2,facebook.com
3,youtube.com
4,yahoo.com
5,baidu.com
6,amazon.com
7,wikipedia.org
8,twitter.com
9,taobao.com
10,qq.com
11,google.co.in
12,live.com
13,sina.com.cn
14,weibo.com
15,linkedin.com
16,yahoo.co.jp
17,tmall.com
18,blogspot.com
19,ebay.com
20,hao123.com

我想看到的输出

>        2 google
> 2 yahoo

感谢您的帮助!

最佳答案

您可以使用类似的方法来获得您想要的输出:

$ awk -F'[.,]' '{++a[$2]}END{for(i in a)if(a[i]>1)print a[i],i}' file
2 google
2 yahoo

将输入字段分隔符设置为 .,,将为文件中的每一行运行第一个 {block}。它使用第二个字段构建一个数组 a:“google”、“facebook”等。$2 是第二个字段的值,因此 ++a[$2] 会递增数组 a["google"]a["facebook"] 等的值。这意味着每次看到相同的名称时,数组中的值就会加一。

处理完整个文件后,for (i in a) 循环将遍历数组中的所有键(“google”、“facebook”等)并打印那些值大于 1 的键。

关于Linux/unix 重名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28034142/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com