标签: diff

使用修改时间 (mtime) 和大小而不是内容来区分目录

是否有一个选项可以让 diff (-q) 不查看文件内容,而只查看大小和 mtime?如果没有,是否有类似的工具可以提供此选项?

directory diff

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

diff 是否可以显示数值差异,并设置一个不将其显示为差异的阈值?

我的差异显示了两个日志文件之间的一些数字差异。这意味着例如:

fileA: 

        Parameter            n (fill abs)
        /All_Data/Height     9830400

fileB: 

        Parameter            n (fill abs)
        /All_Data/Height     9830500
Run Code Online (Sandbox Code Playgroud)

所以,如果diff命令在文件之间执行:

% diff fileA fileB
-> 
< /All_Data/Height     9830400
---
> /All_Data/Height     9830500
Run Code Online (Sandbox Code Playgroud)

我想在 diff 命令中设置一个阈值,意思是

  1. 如果数字之间的差异大于 ,则显示差异500。所以9830400-9830500=100。不应显示任何差异。

diff file-comparison numeric-data

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

使用“diff-highlight”进行差异

我已经将diff-highlight设置为 git 的分页器/荧光笔。

[pager]
    log = diff-highlight | less
    show = diff-highlight | less
    diff = diff-highlight | less
Run Code Online (Sandbox Code Playgroud)

效果很好。

但是如何将 diff-highlight 用于普通 diff 呢?

diff git

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

为什么用 wget 下载同一个网页两次会导致两个不同的文件?

我正在尝试编写一个脚本,当静态网页发生更改时会通知我。为此,我使用wget下载网页,并diff检查它是否已更改。我正在运行 Ubuntu 20.04 LTS 虚拟机。这是示例:

$ wget --quiet https://twiki.di.uniroma1.it/twiki/view/Reti_Avanzate/InternetOfThings2021 -O file1
$ wget --quiet https://twiki.di.uniroma1.it/twiki/view/Reti_Avanzate/InternetOfThings2021 -O file2
$ diff -q file1 file2
Files file1 and file2 differ
Run Code Online (Sandbox Code Playgroud)

如您所见,diff报告两个文件之间的差异。为什么?即使我试图将它们与diff -y它们对我来说看起来一样。

更新

寻找差异与git diff --color-words -- file1 file2给出以下结果:

差异

显然,有一个字段添加了时间戳,在两个文件之一中,另一个文件<!--GENERATED_HEADERS-->中没有。

关于如何解决它的任何想法?

diff wget

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

提取两个文件之间按顺序交换的行的索引

我有两个大型制表符分隔文件(>10GB),我知道当它们排序时,它们的内容是相同的。

但是,我对行的顺序和交换的行的索引感兴趣,当它们共享相同的“键”时(此处的键定义为基于SourceLocation列分组的行)。

换句话说,只有当这两个文件之间的行来自同一组时(即,当它们共享相同的源和位置时),才应相互比较。

例如,在下面的示例中,第 4、5、6 行file1.tsv应与来自的第 4、5、6 行进行比较file2.tsv

注意:文件是普通的 TSV。仅在此处添加额外的空格以使列居中和右对齐以获得更好的可见性。这些空格不是原始文件的一部分

文件1.tsv

     Identifier  Position Source  Location
     AY1:2301        87    ch1        14
    BC1U:4010       105    ch1        14
    AC44:1230        90    ch1        15
    AJC:93410        83    ch1        16
    ABYY:0001       101    ch1        16
       ABC:01        42    ch1        16
      HH:A9CX       413    ch1        17
      LK:9310         2    ch1        17
    JFNE:3410       132    ch1        18
    MKASDL:11        14    ch1        18
   MKDFA:9401        18    ch1        18
  MKASDL1:011       184    ch2        50
   LKOC:AMC02        18    ch2        50
     POI:1100       900    ch2        53
    MCJE:09HA        11 …
Run Code Online (Sandbox Code Playgroud)

bash diff awk file-comparison

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

“全功能十六进制编辑器”的祝福?

我试图找到一些十六进制 difftool,它允许我与视图中的文档进行比较,但也可以比较内部差异,例如bless并排的两个 bless 窗口,但窗口之间具有差异功能,至少用于选择。我发现这bless - A full featured hexadecimal editor可能是集成的最佳选择。

在任何 Linux 发行版中是否有用于 hex-ascii 视图的 difftool?

diff ascii hex

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

是否有一些工具可以在一个目录中查找文件而不是在另一个目录中查找文件?

我想编写一个 bash 脚本来在一个目录中而不是在另一个目录中查找这些文件。

下面的脚本有效吗?什么时候不行?

for i in "$1"/*; do
    f=$(basename $i);
    if [ ! -e "$2"/"$f" ]
    then
        echo $f
    fi
done
Run Code Online (Sandbox Code Playgroud)

我听说diff 也可以找到两个目录内容之间的差异。它也能解决同样的任务吗?

或者其他什么工具?

谢谢。

directory diff files

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

Linux diff 命令,是否丢弃换行符?

Linux 实现是否diff -w丢弃\n?我无法访问 Linux 机器来检查它。

diff

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

bash 从两个文件中删除公共行

我有两个文件,(没有空行/空格/制表符)

/tmp/所有

aa  
bb  
cc  
hello  
SearchText.json  
xyz.txt  
Run Code Online (Sandbox Code Playgroud)

/tmp/必需

SearchText.json 
Run Code Online (Sandbox Code Playgroud)

我想要的最终输出是:(来自 /tmp/all 的所有不常见行)

aa  
bb  
cc  
hello  
xyz.txt 
Run Code Online (Sandbox Code Playgroud)

我尝试过以下命令:-

# comm -23 /tmp/required /tmp/all

SearchText.json
Run Code Online (Sandbox Code Playgroud)

# comm -23 /tmp/all /tmp/required

aa  
bb  
cc
hello  
SearchText.json  
xyz.txt  
Run Code Online (Sandbox Code Playgroud)

# comm -13 /tmp/all /tmp/required

SearchText.json  
Run Code Online (Sandbox Code Playgroud)

# comm -13 /tmp/required /tmp/all

aa  
bb  
cc  
hello  
SearchText.json  
xyz.txt  
Run Code Online (Sandbox Code Playgroud)

# grep -vf /tmp/all /tmp/required

# grep -vf /tmp/required /tmp/all

aa  
bb  
cc  
hello  
SearchText.json  
xyz.txt  
Run Code Online (Sandbox Code Playgroud)

# comm -23 <(sort /tmp/all) <(sort /tmp/required)

aa  
bb  
cc  
hello …
Run Code Online (Sandbox Code Playgroud)

diff text-processing comm

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

如何将命令输出与文本文件进行比较?

我正在学习一些编程面试问题,所以我编写了 FizzBu​​zz。我正在尝试将我的程序的输出与 .txt 文件中的已知良好输出进行比较。

我如何检查node fizzbuzz.js输出是一行一行的等于一个expected-output.txt文件,甚至是diff它们?

我已经按照重复问题中的建议进行了尝试:

diff -u expected-output.txt <(node fizzbuzz.js)

diff什么都不输出,似乎永远不会退出,直到 I ^C。该程序本身运行良好,diff -u expected-output.txt <(cat test.txt)node由于某种原因,它似乎不能很好地运行。

bash diff

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

标签 统计

diff ×10

bash ×2

directory ×2

file-comparison ×2

ascii ×1

awk ×1

comm ×1

files ×1

git ×1

hex ×1

numeric-data ×1

text-processing ×1

wget ×1