如何从文本文件列表中的单词中删除行?

2023-12-06

file1 > word_list.txt > 超过 1,000,000 行

file2 > list.txt > 超过 1,000,000 行

我有一个包含单词列表的文件。我想从一个大文本文件中删除此文件中所有单词的所有出现。

Example:

File 1

111
222

文本文件样本

111
222
333
444
555

Output

333
444
555

对于超过 100 万行的大文件,此代码会非常慢:

sed -e "$(sed 's:.*:s/&//ig:' word_list.txt)" list.txt

解决这个问题最合适的方法是什么?


假设, 文件的结构是每行一个单词,每个文件中的单词都是唯一的,文件可以排序(或已经按排序顺序)

$ comm -13 file1 file2

333
444
555

-1   suppress lines unique to file1
-3   suppress lines that appear in both files 

这将为您提供 file2 中不在 file1 中的唯一单词(即设置差异 file2 \ file1)

这应该是最快的方法。如果您可以测试替代解决方案,请发布时间。

或者,

$ awk 'NR==FNR{a[$0]; next} !($0 in a)' file1 file2

只要你有足够的内存就应该可以工作。这不需要排序。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从文本文件列表中的单词中删除行? 的相关文章

随机推荐

  • 使用密度图对特定区域进行着色 - ggplot2

    我有一个关于数据可视化的问题ggplot2 我试图弄清楚如何在密度图中遮蔽特定区域 我用谷歌搜索了很多 并尝试了所有解决方案 我的代码是 original 12 lt data frame sum rnorm 100 30 5 sex c
  • 使用 PHP CLI 执行路由(控制器/操作)并检测 CLI 请求

    Laravel 4 中有没有办法使用 PHP CLI 运行我的控制器 操作 如果请求来自 CLI 我想扩展一个控制器 操作来执行替代操作 那么有没有办法将该请求识别为 CLI 请求 Laravel 文档这个网站似乎表明有一个方法 Reque
  • 下面的宏可能会给应用程序带来什么问题?

    下面的宏会带来问题吗 define sq x x x 如果是 那么如何以及为什么 请帮忙 是的 它可能会带来问题 除了宏根本不尊重命名空间这个明显的事实 这意味着你不能调用其他任何东西 sq 请尝试以下操作 int result sq 4
  • 如何开始使用 Skobbler 跟踪 POI

    这是我用于创建可跟踪 POI 并启动 POI 跟踪的代码 该代码放置在我计算路线并开始导航之前 void createTrackablePOIs Go through the route array and create POIs out
  • 针对大动态响应进行断言

    我有一个非常大的响应数组 我想对其进行断言 但不知道顺序 我有一个具有预期响应值的变量 因此我可以进行一次巨大的比较 但我无法加载整个响应并同时将其与整个预期响应变量进行比较 def obligationsQuery Java type t
  • 与“iPad 2”失去连接

    我已经停止了所有模拟器进程 但仍然出现以下错误 恢复与 iPad 2 的连接并再次运行 APPNAME 或者如果 APPNAME 仍在运行 您可以通过选择 调试 gt 附加到进程 gt APPNAME 来附加到它 在 Xcode 6 中出现
  • 将位序列传递给文件 python

    作为较大项目的一部分 我想在文件中保存一系列位 以使文件尽可能小 我不是在谈论压缩 我想按原样保存序列 但使用最少的字符 最初的想法是使用 ASCII 编码将 8 位的迷你序列转换为字符并保存这些字符 但由于一些未知的奇怪字符问题 读取文件
  • 如何创建文本通道

    最近我一直在制作一个不和谐的机器人 我想在玩家输入命令后创建一个频道 gt report Tag Reason 以下是我尝试过的两种方法 其中一种来自之前的 StackOverflow 问题 但对我不起作用 function makeCha
  • MVC2.0中捕获HTML到字符串

    我是 MVC2 0 的新手 我使用下面的代码捕获 HTML 并将其作为字符串返回 但这在 MVC1 0 和 NET 3 5 框架中工作得很好 最近我将代码升级到 NET 4 0和MVC 2 0 现在这不再起作用并且上下文返回 null 当我
  • 没有“Access-Control-Allow-Origin”:读取 CSV、D3 [重复]

    这个问题在这里已经有答案了 我正在尝试从源读取 csvhttps stats oecd org Index aspx DataSetCode WILD LIFE 令 x 为上面的 url 但是 当我在本地主机上运行此脚本时 我收到以下消息
  • 调试 Android RuntimeException - 在我的代码执行之前

    我对 Java 并不陌生 但对 Android 平台却很陌生 我发现平台的缺点之一是对运行时崩溃的有意义的反馈 在应用断点的用户代码中很好 但我在第一次运行时发生崩溃 导致我的项目无法启动 并且我看不到追踪它的方法 任何人都可以阐明吗 Da
  • 应用程序特定信息:应用程序未能及时启动(iOS)?

    这是我的一份崩溃报告的顶部 Apple 是否规定了应用程序启动超时限制 如果是这样 有什么常见的解决方法吗 Elapsed total CPU time seconds 13 700 user 8 580 system 5 120 67 C
  • 在android中对字符串数组列表进行排序[重复]

    这个问题在这里已经有答案了 我有一个名为的字符串数组列表names 如何按字母顺序对数组列表进行排序 ArrayList
  • 如何添加对 .NET MySQL 连接器的引用?

    这是什么意思 接下来添加对 MySql Data 的引用 实际上我已经下载了mysql连接器 net 请按照以下说明操作 首先 您需要安装mysql连接器 net 它位于 http dev mysql com downloads conne
  • 如何从 .net 中的框架外的 Webbrowser 控件检索 HTML (c#)

    我知道我可以通过以下方式获取 Webbrowser 控件的 HTML 源代码 HtmlDocument htmldoc webBrowser1 Document 但这只提供了 父页面 的html代码 如果网页使用框架 则不会返回包括框架在内
  • 我如何告诉 Moq 返回任务?

    我有一个接口声明 Task DoSomethingAsync 我使用 Moq 框架进行测试 TestMethod public async Task MyAsyncTest Mock
  • 如何使用 JAVASCRIPT 播放和暂停嵌入的 Spotify?

    有人可以解释一下如何播放和暂停这个 Spotify 嵌入对象吗 我试图找到该玩家的 ID 但找不到 URL https open spotify com embed podcast show 5iKz9gAsyuQ1xLG6MFLtQg 这
  • 在 AVX2 中重现 _mm256_sllv_epi16 和 _mm256_sllv_epi8

    我很惊讶地看到 mm256 sllv epi16 8 m256i v1 m256i v2 and mm256 srlv epi16 8 m256i v1 m256i v2 不在英特尔内联指南我没有找到任何解决方案来仅使用 AVX2 重新创建
  • 无法在 Ubuntu 上安装 Elastic Beanstalk CLI

    我正在尝试使用以下命令在新的 Ubuntu 14 04 在适用于 Windows 的 Linux 子系统上 上安装 Elastic Beanstalk CLI awsebcli sudo pip install awsebcli 但启动eb
  • 如何从文本文件列表中的单词中删除行?

    file1 gt word list txt gt 超过 1 000 000 行 file2 gt list txt gt 超过 1 000 000 行 我有一个包含单词列表的文件 我想从一个大文本文件中删除此文件中所有单词的所有出现 Ex