2025年sha256sum文件哈希值和直接哈希字符串的哈希值不一样

sha256sum文件哈希值和直接哈希字符串的哈希值不一样例如在文件 test txt 里写入 test 没有换行 然后 sha256sum test txt 出来的结果是 f2ca1bb6c7e9 test txt 但是在这个网站上 http encode chahuo com

大家好,我是讯享网,很高兴认识大家。

例如在文件test.txt里写入

test 

讯享网

没有换行。

然后

讯享网sha256sum test.txt 

出来的结果是

f2ca1bb6c7e907d06dafe4687e579fce76b37e4e93bda52e6ccc26fd2 test.txt 

但是在这个网站上
http://encode.chahuo.com/
输入test,然后以sha256方式哈希得到的结果是

讯享网9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08 

两者不一致。

stat test.txt 
讯享网 文件:test.txt 大小:5 块:8 IO 块:4096 普通文件 设备:10301h/66305d Inode: 硬链接:1 权限:(0644/-rw-r--r--) Uid:( 1000/searchstar) Gid:( 1000/searchstar) 最近访问:2020-04-23 11:53:08. +0800 最近更改:2020-04-23 11:53:03.0 +0800 最近改动:2020-04-23 11:53:03.0 +0800 创建时间:- 

会发现大小为5字节,说明linux的文件中加上了其他东西。
hexdump来看看到底加上了什么。
在这里插入图片描述
讯享网
居然是0x0a,也就是\n。为了验证,用vscode打开它看看
在这里插入图片描述
末尾果然多了个换行符。把它去掉,保存。
在这里插入图片描述
文件大小变回4字节了,而且sha256sum的输出也和网站一样了。

此外,还可以尝试让sha256sum直接从stdin中读入

sha256sum - 

然后输入

讯享网test<EOF> 
9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08 

与网站上的一致了。

为什么要自动加一个换行呢?

如果没有换行,那就会这样
在这里插入图片描述
自动加上了换行,就会这样
在这里插入图片描述

vim中禁用自动加换行

参考:https://stackoverflow.com/questions//vim-disable-automatic-newline-at-end-of-file
~/.vimrc中加入

讯享网set noeol set nofixendofline 

两个缺一不可,而且只有新建文件时才有用,打开已有文件时仍然不能显示出多加的那个空行。最气的是当没有最后的空行,然后又自己手动加一个,保存关闭再打开之后空行又不显示了。说好的Linux高自由度呢???

祭奠我逝去的一小时

小讯
上一篇 2025-01-26 10:49
下一篇 2025-02-28 08:05

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/62127.html