You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何生成包含唯一域名后缀行的输出文件

解决方案:提取域名后缀并去重

这里有几个高效的命令行工具方案,完美匹配你的需求:

方法一:用 sed + sort 快速实现(简洁首选)

这个方案用一行命令就能搞定,逻辑清晰:

sed 's/^[^.]*\.//' input.txt | sort -u > output.txt

命令解释:

  • sed 's/^[^.]*\.//':负责去掉每行最左侧的一级域名。其中正则表达式 ^[^.]*\. 匹配行开头到第一个点的所有内容(比如 a.、b.、r.),替换为空字符串后就得到了剩下的域名部分。
  • sort -u:对处理后的结果进行排序并自动去重(-u 参数表示只保留唯一值)。
  • > output.txt:将最终结果写入目标文件。

测试你的输入内容,执行后得到的 output.txt 完全符合你的要求:

cop.com
ex.com
foz.cop.com
mx.com

方法二:用 awk 保留原始顺序去重

如果你希望输出结果保持原始域名的出现顺序(不排序),可以用 awk 来跟踪已出现的内容:

awk -F '.' '{
    result = ""
    for (i = 2; i <= NF; i++) {
        result = result (i > 2 ? "." : "") $i
    }
    if (!seen[result]++) print result
}' input.txt > output.txt

逻辑说明:

  • -F '.':将每行按点分割成多个字段。
  • 循环从第2个字段开始拼接,还原去掉最左侧一级后的域名。
  • seen[result] 是一个关联数组,用来记录已经输出过的结果,确保每个值只打印一次。

用这个方法处理你的输入,输出顺序会是:

ex.com
mx.com
foz.cop.com
cop.com

内容的提问来源于stack exchange,提问作者Aryan Kushwaha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.28 10:14:05