【问题标题】:Identical Text Files (.txt) are not matching相同的文本文件 (.txt) 不匹配
【发布时间】:2016-02-03 15:56:15
【问题描述】:

我正在使用终端向 API 运行 curl 请求,并将该请求的结果存储在文本文件中。

在后续命令中,我将之前存储的文本文件与存储 curl 请求的新文本文件进行比较。

使用工具文本比较软件 (https://www.diffchecker.com) 来识别两个文件之间的任何更改。它说大部分文字已被删除-----但是当我阅读它时,文字完全一样:O

这是否发生在其他人身上?不知道如何解决。我不能在网上发布文件,因为它们是机密的:(

感谢您的帮助!

【问题讨论】:

  • 您在使用在线工具检查机密文件?认真吗?
  • 不,我们删除 conf,寒意 ;)
  • 在 Mac 上比较文件不需要高级编辑器,而且您当然不需要在线工具。 OSX 包含您从终端中需要的一切。尝试diff -y file1 file2 以获得更多视觉效果。如果隐藏了特殊字符,请使用 od -c file | less 查看您的文本文件的内容。
  • 一个文件是否有\n 行结尾而另一个有\r\n 行结尾?
  • @glennjackman 也许是这样,我该如何检查

标签: bash curl text terminal


【解决方案1】:

比较文件最简单的工具是cmp

if cmp --quiet file1 file2; then
    echo "files are the same"
else
    echo "files are different"
fi

如果您对“发生了什么变化?”感兴趣然后使用diffcomm

【讨论】:

  • 谢谢,这很有帮助。我仍然收到与使用文本编辑器时相同的响应。不同的文本文件的 I 部分显示在终端上,但(表面上)它们看起来相同。有什么方法可以使用 diff 或 comm 来检查文件中是否有隐藏空格?
【解决方案2】:

隐形字符很有可能存在差异。喜欢空间和新的线条。你可以拿一个像notepad++这样的高级编辑器,让他显示不可见的字符

【讨论】:

  • 您知道我可以在 Mac 上使用的高级编辑器吗?谢谢:)
  • 我会投票给vim。我认识的最先进的编辑器之一。
【解决方案3】:

使用HxD 的“比较文件”(分析--> 文件比较--> 比较,然后按F6 表示每个后续差异),它将以视觉方式突出显示哪些字节不同,并使用像QuickHash 这样的散列工具,您可以确定文件是否不同。

【讨论】:

  • 谢谢!我在 Mac 上尝试使用 QuickHash 时收到一条错误消息,指出“不再支持 PowerPC 应用程序”。你有什么可以在 Mac 上运行的东西吗?
  • 啊,您使用的 Apple Mac 系统一定比 Yosemite 旧。相反,请转到终端,导航到文件所在的位置并使用命令“sha1sum”。例如YourMac> sha1sum Filename1.txt,后跟 sha1sum Filename2.txt 如果输出不同,则文件是。如果输出相同,则文件肯定相同。
猜你喜欢
  • 2020-07-20
  • 1970-01-01
  • 1970-01-01
  • 2017-12-05
  • 2022-11-29
  • 2016-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多