使用 awk 或 sed 比较两个文件

2023-12-03

这对你来说一定很容易

这是 file1(一列)

1
2
3
4
5
6
7
8
9

这是 file2 (两列)

2 yay
3 ups
4 wow
8 hey

必须有一个简单的行来打印 file1 中与 file2 不匹配的行


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

或使用 join 和 -v ,如@Michael建议的:

join -v1 file1 file2

两者都会打印:

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

使用 awk 或 sed 比较两个文件 的相关文章

  • 检查 Bash 数组中是否存在元素[重复]

    这个问题在这里已经有答案了 我想知道是否有一种有效的方法来检查 Bash 数组中是否存在元素 我正在寻找类似于我可以在Python中做的事情 例如 arr a b c d if d in arr do your thing else do
  • 如何在 sed 中用“pwd”的结果替换令牌?

    我正在尝试做这样的事情 sed s REPLACE WITH PATH pwd 不幸的是 我出错了 sed e expression 1 char 23 unknown option to s 为什么会发生这种情况 您需要使用不同的字符而不
  • 仅替换引号之间的空格

    我有日志文件中的一行 field 1234 text in quotes 1234 other text in quotes 我想替换引号之间的空格 这样我就可以使用空格作为分隔符来提取列 所以结果可能是这样的 field 1234 tex
  • 忽略 sed 查找和替换命令中的斜杠

    我正在尝试在终端中使用 sed 进行查找和替换 在 apache 配置文件中 我尝试替换 DocumentRoot var www with DocumentRoot var www mysite com public html 从命令行
  • 如何使用 bash 中提供的工具生成一系列非周末日期?

    我想生成一个文件列表 其中名称包含 filename date 例如file 20111101 file 20120703 开始November 1 2011直到今天 应该不包括周末 Thanks 2011年试试这个 for y in 20
  • sed + 删除以 ### 开头的行,包括行开头和 ### 之间的空格

    I have sed i d file 如何更改 sed 语法以便像 awk 语法一样做出反应 awk t file 例如 sed 需要删除以空格或 TAB 开头的行 然后 sed i t d file
  • exec()、shell_exec()、curl_exec() 的安全漏洞

    有时 我会使用 exec shell exec 和curl exec 以下是典型用途 假设其中有 PHP 变量 即第一个变量中的 html 用户有可能修改其内容 从安全漏洞的角度来看 我应该关注什么 escapeshellcmd 和 esc
  • 不要将变量内容视为 sed 中的特殊字符

    我有以下内容sed命令 sed i 4i CHANGES CHANGELOG rst 然而 我的 CHANGES变量看起来像这样 title list elem elem 因此 上述命令失败并出现以下错误 sed e expression
  • sed - 删除行尾的句点

    我正在尝试删除文本文件中行尾的句点 有些行末尾有句点 有些则没有 cat textfile sometexthere 123 22 no period moretext with period lt remove this period n
  • 使用 awk 如何组合两个文件中的数据并将第二个文件中的值替换到第一个文件中?

    有什么想法如何使用 awk 进行以下操作吗 两个输入文件 data txt和keys txt data txt 包含一些数据 A 1 B 2 A 3 keys txt 包含 键 值 对 本例中的 C 不是 data txt 的一部分 但 a
  • 无法从 bash 脚本使用 nvm

    我正在尝试编写一个 shell 脚本来自动设置我的开发环境 安装 python nvm node mongo 等 我正在使用 nvm 来安装 Node js 它告诉您关闭并重新打开终端以开始使用 nmv 命令 我尝试获取 bashrc 和
  • 批量检测系统是32位还是64位

    有谁知道如何创建一个批处理文件 如果是 64 位系统 可以对一个程序进行 shell 处理 如果是 32 位系统 则可以对另一个程序进行 shell 处理 检查 PROCESSOR ARCHITECTURE being x86 if PRO
  • 如何将输出重定向到文件,如果文件不存在则不创建它?

    我需要将输出重定向到一个文件 gt 在 shell 中 但如果该文件尚不存在 则不应创建该文件 如何实现这一目标 我尝试创建文件的符号链接并重定向到符号链接 但不幸的是 如果文件尚不存在 无论如何都会创建文件 也许我需要重定向到一个单独的程
  • Ruby 在特定目录中运行 shell 命令

    我知道如何在 Ruby 中运行 shell 命令 例如 x cmd 但是 如何指定运行此命令的目录 有没有类似的脱壳方式 类似subprocess Popen在Python中 subprocess Popen r c mytool tool
  • RichTextbox SelectionStart 返回错误的索引

    我需要向用户显示光标上文本的选择开始和长度 就像在 notepad exe 中一样 选择长度没有问题 因为 Richtextbox 支持带有开始和结束的选择属性 http msdn microsoft com en us library s
  • shell脚本中是否有互斥/信号量机制?

    我正在 shell 脚本中寻找互斥 信号量 并发机制 考虑以下情况 除非 a 用户不关闭共享文件 否则 b 用户应该无法打开 更新它 我只是想知道如何在 shell 脚本中实现互斥量 信号量 临界区等 在 shell 脚本中实现锁定机制 文
  • 如何隐藏显示终端命令输出

    当我运行这个命令时 sudo htpasswd b home reynolds htpasswd admin admin 我正在得到输出Updating password for user admin在终端中 但我不想显示该输出 所以我在谷
  • “./somescript.sh”和“. ./somescript.sh”有什么区别

    今天我按照一些说明在 Linux 中安装软件 有一个需要首先运行的脚本 它设置一些环境变量 指令告诉我执行 setup sh 但是我执行时犯了一个错误 setup sh 所以环境没有设置 最后我注意到了这一点并继续进行 我想知道这两种调用脚
  • 写入和读取文本文件 - C# Windows 通用平台应用程序 Windows 10

    有用 但在显示任何内容之前 您必须在文本框中输入内容 我想那是因为我使用了 TextChanged 事件处理程序 如果我希望它在没有用户交互的情况下显示文本文件的内容 我应该使用哪个事件处理程序 因此 我想在按下按钮时将一些数据写入 C W
  • PHP 日志文件颜色

    我正在编写一个 PHP 日志文件类 但我想为写入文件的行添加颜色 我遇到的问题是颜色也会改变终端的颜色 我想要实现的是仅更改写入日志文件的行的颜色 class logClass extends Singleton private funct

随机推荐

  • 如何用 pandas 对浮点数进行分类

    这段代码一直有效 直到我将 python 2 x 升级到 3 x 我有一个由 3 列 ipk1 ipk2 ipk3 组成的 df ipk1 ipk2 ipk3 由浮点数 0 4 0 组成 我想把它们装进字符串中 数据看起来像这样 ipk1
  • Eclipse 中 Storm 集群关闭

    我有一个问题 我知道有麻烦 但找不到解决方案 集群没有关闭 抛出 IOException I O 方法不起作用 因为 Windows 不允许临时文件夹 我的意思是这个路径 C Users Mert AppData Local Temp 8b
  • ASP.NET Repeater 中的 ImageButton 不会触发 OnClick 事件处理程序

    我在中继器控件内有一个 ImageButton 我已将事件处理程序附加到 ImageButton 的 OnClick 事件 但是当我单击 ImageButton 时 事件不会被触发 如果我遗漏了什么 请告诉我 谢谢 我已附上 aspx 页面
  • JavaScript 双击事件?

    Scripts var timer var firing false var begen function id alert one click var popupAc function id alert double click func
  • 信箱不可用。服务器响应为:5.7.1 无法中继 [电子邮件受保护] [已关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我正进入 状态 信箱不可用 服务器响应为 5 7 1 无法中继 电子邮件受保护 当我尝试使用 ASP NET 发送邮件时 该网站部署在 IIS7 Windows 2008 服务器上
  • Solaris - 为什么 java.lang.UNIXProcess.forkAndExec(Native Method) 挂起

    我有一个在 Solaris 上运行的 java 应用程序 该应用程序使用 Runtime exec 定期启动外部进程 似乎一段时间后 多次成功启动此类进程后 进程的启动将挂起 此时 以及几分钟后 进行的线程转储显示 java lang UN
  • z-index 未正确索引[重复]

    这个问题在这里已经有答案了 好的 这段代码在一个 div 中生成了两个块 顶部块应该越过底部块 因为顶部具有更高的 z index 但是当我给底部块一个 margin top 30px 时 它会超出顶部块 div style width 3
  • Firefox 中忽略网格项目的填充/边距百分比

    This codepen在 Chrome 上创建一个 100 50 px 的红色单元格网格 这是预期的行为 grid display grid grid gap 8px grid template columns 100px 100px c
  • 没有 XML 的 Android AdMob

    我有一个很大的问题要问 因为我真的被这个问题困扰了 它会被创建来在我的免费应用程序上获取广告 好吧 首先我一直在关注这本书 2011年开始Android游戏 http www apress com 9781430230427 现在这本书实现
  • Uniscan:可加载库和 perl 二进制文件不匹配

    Uniscan 是一款用于扫描 kali linux 和其他笔测试发行版中的网站的工具 我曾经每周使用它来测试我的应用程序 但在对我的 Linux 工具进行一些更新后 现在在运行它时出现以下错误 xs Moose c 可加载库和 Perl
  • JS中递归添加字符串

    我正在解决一个递归问题 该问题返回一个 hi 字符串 其中第一个 hi 的大写字母 H 并且该字符串以感叹号结尾 到目前为止 我有下面的代码 但我不确定如何防止随后出现大写 H 的 hi 欢迎任何指导 function greeting n
  • 一种在firefox的urlbar中观察url,并在每次变化时获取事件的方法

    我的 Firefox 扩展需要它 我不关心等待页面完全加载 我只想观察 URL 并在每次更改时获取一个事件 以及当我来回历史记录时 edit I saw URL 变化的观察者 Firefox 扩展 但我想知道是否有更简单的东西 例如每次 u
  • 尝试包含 phpseclib 时无法打开流错误消息

    我正在尝试按照安装 phpseclib 的说明进行操作 我解压了所有内容并创建了一个新的phpseclib文件夹到 usr share pear 所以我有以下结构 usr share pear phpseclib Net Crypt Fil
  • Botframework 在完成当前意图对话框之前不会中断其他意图对话框

    我使用 LUIS ai 实现意图 A 和 B 在意图 A 中我正在使用builder Prompts text向用户询问几个问题 然而 有时根据答案 它会切换到意图 B 我猜它恰好与我的意图 B 相匹配 尽管我认为它不应该 有没有办法防止这
  • 在 matplotlib 中使用 PolyCollection 进行绘图

    我正在尝试在 matplotlib 中绘制 3 维图 我必须在单个 3D 图中绘制四个 或多个 半径的频率与幅度分布 我正在查看 matplotlib collections 中可用的 PolyCollection 命令 并且还浏览了该示例
  • YouTube 数据 API 通过句柄获取频道

    句柄简介 一种识别 YouTube 频道的新方法 YouTube 数据 API 是否支持通过 handle 查询频道 这似乎不被支持 ex https www youtube com lionsgatemovies forUsername
  • Nuxt:如何显式命名 JS 块?

    我在用着Nuxt在静态站点生成模式下 我的项目中的一项要求是仅部署某些路线 每条路线都有各自的资产 But Nuxt给块随机名称 例如925446d js 所以我创建了一个手册router js并在导入我的组件时指定块名称 componen
  • Chrome-Mobile PWA 全屏:应用程序区域超过 HTML 高度

    所以 我得到了一个 Angular PWA 它设置为全屏运行 但是当我设置 display fullscreen 在网络清单中 而不是 display standalone 我得到了一块额外的可滚动内容 它的大小与现在隐藏的 Android
  • 读取文本文件时如何修复此 cp950“非法多字节序列”UnicodeDecodeError?

    我的老师教我们如何使用 exec 但我得到了一个错误 UnicodeDecodeError cp950 codec can t decode byte 0xe6 in position 1814 illegal multibyte sequ
  • 使用 awk 或 sed 比较两个文件

    这对你来说一定很容易 这是 file1 一列 1 2 3 4 5 6 7 8 9 这是 file2 两列 2 yay 3 ups 4 wow 8 hey 必须有一个简单的行来打印 file1 中与 file2 不匹配的行 awk NR FN