标签: diff

两个二进制文件有多相似/不同

我有一些媒体文件(现在是视频文件,但我怀疑我也能够对图片文件使用一个好的解决方案),它们非常相似,但根据diff/cmp不完全相同。但是,如果只有几个字节不同,我可能无法区分(我知道这很大程度上取决于几个因素,让我们忽略它)。是否存在一个程序(最好是在 Debian Stretch 中)可以输出(估计)两个文件中有多少位/字节不同?

linux diff

2
推荐指数
1
解决办法
1180
查看次数

rsync 双向完成,但目录大小不同。怎么可能?

我想同步 2 个目录 ( /src& /dst) 以镜像这两个目录中的所有文件。

这是一个步骤:

  1. sudo rsync -vaP --stats /src /dst-> 已完成且没有错误
  2. sudo rsync -vaP --stats /dst /src-> 已完成且没有错误
  3. diff -rq /src /dst-> 不显示任何差异。
  4. du -s /src && du -s /dst显示不同的尺寸(10% 差异)。

怎么可能?我完全陷入了这个困境。

command-line diff rsync disk-usage macos

2
推荐指数
1
解决办法
2995
查看次数

仅区分文件中的单词

我有两个文件需要比较。

问题是,缩进和换行符具有不同的格式,因此只diff file1 file2返回两个文件的整个输出。

有没有办法忽略除实际文本之外的所有内容?

diff centos file-comparison

2
推荐指数
1
解决办法
427
查看次数

如何使用 etckeeper 查看特定文件的差异或至少旧版本?

因此,我在运行 Debian 9.1 和 KDE 的机器上使用etckeeper,并希望查看特定文件的差异(或者如果尚未实现:过去的版本)。我怎样才能做到这一点?

diff debian git version-control etckeeper

1
推荐指数
1
解决办法
2443
查看次数

确定两个iso图像是否相等

我最近在多台机器上使用dd. 我的命名并没有做得很好,并且有一些重复。如何快速确定两个图像是否相等?我一直在使用,diff但需要一段时间。

iso diff dd disk-image

1
推荐指数
1
解决办法
509
查看次数

给定两个文件,如何找到行更改的总数?

我尝试使用此命令来计算两个文件之间更改的行数:

diff -U 0 file1 file2 | grep ^@ | wc -l
Run Code Online (Sandbox Code Playgroud)

我对这个命令的问题是,如果一个文件只有一行,而另一个文件有 100 行,输出仍然只有 1。

什么命令可以给我更改的总行数,包括一个文件中的总行数?

command-line grep diff wc

1
推荐指数
1
解决办法
1597
查看次数

Linux 相当于 windows cmd 命令

我要迁移到 Linux,我需要转换以下 Windowscmd命令:

fc file1.txt file2.txt | find /i "no se han encontrado diferencias" > nul && set equal=yes
Run Code Online (Sandbox Code Playgroud)

我觉得fc可以用diffor comm, findwith代替grep,但我不知道怎么做这&&部分,也许是一个if声明......

shell grep diff comm

1
推荐指数
1
解决办法
1531
查看次数

如何区分更改的行和添加的行?

我有两个 csv 文件,我想在其中找出删除、修改和添加的行。(第一个字段是唯一的 ID。)

第一个文件看起来像:

0, WILL_BE_REMOVED
1, OLD
2, SAME
3, SAME
Run Code Online (Sandbox Code Playgroud)

和一个更新的 csv 文件:

1, CHANGED
2, SAME
3, SAME
4, ADDED
5, ADDED
Run Code Online (Sandbox Code Playgroud)

我在想这diff可能会告诉我,但是当我跑步时:

diff newer_file.csv  older_file.csv 
1c1,2
< 1, CHANGED
---
> 0, WILL_BE_REMOVED
> 1, OLD
4,5c5
< 4, ADDED
< 5, ADDED
---
> 
Run Code Online (Sandbox Code Playgroud)

我看到一条改变的线,类似于添加的线。有没有办法区分更改和添加?

我可以用 diff 实现我想要的吗?如果没有,其他一些 bash 工具是否适合我的用例?

DELETED: 0, WILL_BE_REMOVED
UPDATED: 1, CHANGED
ADDED 4,
ADDED 5,
Run Code Online (Sandbox Code Playgroud)

diff text-processing csv

1
推荐指数
1
解决办法
684
查看次数

如何使用 diff -y 使文本换行?

当我用来diff -y比较两个具有长行文本的文本文件时,结果会截断每一列,并且我无法读取整行。我希望文本能够换行(或折叠,也称为折叠),以便我可以阅读整行。

例如,假设我有两个简单的文本文件,每行一行:

cat tmp.txt tmp2.txt
The quick brown fox jumped over the lazy dog. This line is very long and will not show when I use a diff. 
The quick brown fox did not jump over the lazy dog. This line is very long and will not show when I use a diff. 
Run Code Online (Sandbox Code Playgroud)

diff我得到了他们,

diff -y tmp.txt tmp2.txt
The quick brown fox jumped over the lazy dog. This line is ve | The quick brown fox …
Run Code Online (Sandbox Code Playgroud)

linux diff command line

1
推荐指数
1
解决办法
3024
查看次数

从 diff 重建文件

假设我有一个文件foo和一个文件bar。我现在调用以下命令:

$ diff foo bar > diff_foobar
$ rm bar
Run Code Online (Sandbox Code Playgroud)

是否有一种(简单的)方法可以以编程方式重建和bar中缺失的内容?foodiff_foobar

diff

1
推荐指数
1
解决办法
1022
查看次数