我有两个文件和一个号码列表(电话号码).

我正在寻找一种在第二个文件中列出第一个文件中没有的数字的方法.

我try 过各种方法:

comm (getting some weird sorting errors)
fgrep -v -x -f second-file.txt first-file.txt (unsure of the result, there should be more)

推荐答案

grep -Fxv -f first-file.txt second-file.txt

基本上在second-file.txt中查找所有与first-file.txt中的任何一行都不匹配的行.如果文件很大,速度可能会很慢.

此外,一旦对文件进行了排序(如果是数字,则使用sort -n),那么comm也应该有效.它给出了什么错误?试试这个:

comm -23 second-file-sorted.txt first-file-sorted.txt

Linux相关问答推荐

使用sed或awk映射自定义和任意函数

C++17/Linux:信号未解锁单独线程中被阻止的网络套接字调用

通过ssh传输参数时避免字符串拆分

如何在 if ... elif struct 中判断 bash 命令的退出状态?

ShellScript,有更好的方法来查找具有特定名称和日期的文件吗?

x64 NASM 汇编程序在程序开始时显示分段错误

Git在某些文件中添加回车符,尽管autocrlf已关闭

线程创建会在 Linux 中触发页面错误吗?它与软脏 PTE 有什么关系?

ln命令报错target not a directory

如何用 Sed 替换 Match 后的 2 个连续行

来自远程主机的 mysqldump

使用 rc.local 运行脚本:脚本有效,但在启动时无效

你如何在 C 中的 Linux 上进行非阻塞控制台 I/O?

通过 VM 的 Centos - 镜像列表中没有 URL

如何告诉 valgrind 对Forking 进程进行 memcheck?

NGINX:connect() 到 unix:/var/run/php7.0-fpm.sock 失败(2:没有这样的文件或目录)

*nix 系统上是否有与 COM 等效的功能?如果不是,那么 *nix 的可重用性方法是什么?

我可以打开一个套接字并将其传递给 Linux 中的另一个进程吗

如何等待第一个命令完成?

Postgresql -bash:psql:找不到命令