当前位置: 首页 > 知识库问答 >
问题:

复制unix中两个文件之间的差异

滕璞瑜
2023-03-14

首先,哪个是最好和最快的unix命令来仅获取两个文件之间的差异?我尝试使用diff来做到这一点(如下)。

我尝试了Neilvert Noval在这里给出的答案-逐行比较两个文件,并在另一个文件中生成差异

法典-

diff -a --suppress-common-lines -y file1.txt file2.txt >> file3.txt

但是,我有很多空间和

我的file1.txt有-

Hello World!
Its such a nice day!
#this is a newline and not a line of text# 

我的file1.txt有-

Hello World!
Its such a nice day!
Glad to be here!
#this is a newline and not a line of text# 

输出 - “ 此处#Many空格#

预期输出-很高兴来到这里:)

共有3个答案

宋高谊
2023-03-14
diff -a --suppress-common-lines -y file1.txt file2.txt|tr 'a >' '' |awk '{print $1}' >>file3.txt 
有凯泽
2023-03-14

diff的-y选项使其产生“并排”diff,这就是为什么您有空格。请尝试使用-u 0,以获得具有零行上下文的统一格式。应打印:

+Glad to be here:)

加号表示该行已添加,而减号表示该行已被删除。

锺离慈
2023-03-14

获取diff的另一种方法是使用awk:

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

尽管我必须承认我没有运行任何基准测试,也不能说哪个是最快的解决方案。

 类似资料:
  • 问题内容: 我有以下两个数组。我想要这两个数组之间的区别。也就是说,如何找到两个数组都不存在的值? 问题答案: 注意: 这个答案将返回的值是不存在的,它不会返回值不在。

  • 问题内容: 如何以格式计算两个日期之间的差并以秒或毫秒为单位获取结果? 问题答案: 因此,您可以为您的目的使用。

  • 问题内容: 功能: 我的要求是找出几年中两个日期之间的差异。所以,我写了上面的函数。在此,如果d1为NULL,则将其分配为当前日期。但是,它会产生如下所示的错误。 有没有人能帮助我解决这个问题。 问题答案: 尝试 : 函数以以下格式返回两个日期之间的年,月和天数: 从此输出中使用,以选择唯一的年份差异。也没有必要把if语句来处理,因为我已经添加返回第一值,所以,如果是它返回 功能结构: 函数调用:

  • 我正在寻找一种方法,以找到不同的值,在两个数据帧的列。例如: 数据表A: 但是,有没有一个简单的解决方案,可以只使用DataFrame操作来获得,也许除了最后的Collect?

  • 问题内容: 我必须找到java中两个不同日期对象之间的时间差异,如果该时间超过5秒,我必须使会话无效。 这是场景: 我有一个jsp页面,它每5秒设置一次会话 我还有另一个jsp页面,每1秒访问一次, 现在,我必须在我提到的另一个jsp中进行比较,并使会话无效, 因此,如果差异超过5秒,则会话无效。 问题答案:

  • 如何获得两个数据帧之间的差异。例如,我有两个数据帧 我想收到