我正在寻找一个脚本,该脚本为 drive recursivley 中的每个文件夹创建一个 md5 chechsum 文件?
我的机器上确实有 md5deep 的副本,但我不太擅长编写 bash 脚本。
在我的 Solaris 机器上,我有时会使用该sum命令来验证文件是否未更改。我现在想检查目录的内容是否已更改但sum仅在文件上运行。
有没有办法sum在整个目录上运行或类似的命令?
sum文件示例:
$ sum file.xml
27247 11 file.xml
Run Code Online (Sandbox Code Playgroud) 我一直在为我的虚拟机备份 Windows 安装程序映像,并验证数据是否正确传输,我一直在使用cksum. 出于好奇,我决定比较cksum运行与运行md5sum相同文件所需的时间。多次运行每个操作后的结果(以确保它与 I/O 缓存无关)md5sum始终花费大约一半的时间cksum。我有两个问题...
md5sum比 快这么多cksum?cksum了md5sum。我正在运行 Arch Linux。
注意:这不是关于哪个更好的问题。之前已经多次讨论过这一点,我知道md5sum不能用作加密哈希。我特别询问使用md5sum作为查找随机错误的手段。
我使用以下命令来验证约 700 GiB 的备份文件:
$ find -type f -exec md5sum {} + | sort > ~/checksums
Run Code Online (Sandbox Code Playgroud)
这需要很多小时,所以我想集成pv到命令中来显示进度。
我可以这样做:
$ find -type f -exec pv {} + | md5sum
Run Code Online (Sandbox Code Playgroud)
但它连接了所有文件,只产生一个校验和。
那么我怎样才能包含pv并仍然在最后得到一个充满校验和的文本文件呢?
两个包含相同歌曲的文件,都是 M4A 格式,当我计算它们的哈希时输出两个不同的结果:
md5sum
f149e2d2a232a410fcf61627578c101a new.m4a
ad26ed675342f0f45dcb5f9de9d586df old.m4a
Run Code Online (Sandbox Code Playgroud)
它们包含相同数量的字节:
ls -l
-rw-rw-r-- 1 cdc cdc 2978666 Jun 26 19:49 new.m4a
-rwxrwxr-x 1 cdc cdc 2978666 Jun 26 19:49 old.m4a
Run Code Online (Sandbox Code Playgroud)
该exiftool输出不同之处仅在创建(日期引擎收录了new.m4a和引擎收录的old.m4a)。
我使用 Audacity 的工具来比较两个文件(通过反转和混合它们,这使它们消除了彼此的相似性),结果是沉默,因为没有留下任何东西,这意味着两个文件之间没有区别。
命令cmp给我:
cmp -l
54 375 23
55 51 305
56 41 112
58 375 23
59 51 305
60 45 116
170 375 23
171 51 305
172 41 112
174 375 23
175 51 …Run Code Online (Sandbox Code Playgroud) 当文件从本地分区传输到 NFS 分区时,任何 linux 发行版中是否有办法执行 md5sum 或 sha1 检查?
例子:
我的本地驱动器上有一个 NFS 安装驱动器和一个非常大的文件。我想将该文件传输到 NFS 安装的驱动器,同时进行 md5 检查。我发现很多脚本可以在将文件复制到远程驱动器上后执行 md5,但由于它是一个 100GB+ 的非常大的文件,我想知道是否有办法利用该文件已经存在的事实传输时红色。
我正在寻找cksum. 例如
echo -n '/my/path/filename' | cksum | cut -d' ' -f1
Run Code Online (Sandbox Code Playgroud)
返回2379496500。可以返回的可能值的范围(最小值和最大值)是多少?
顺便说一句,上面的参数是完全限定文件路径的字符串值,而不是由此指定的文件的内容。
我有一个包含内容的目录。为了确保复制时不会丢失任何内容,我压缩了目录,现在我有了一个dir.tar.gz文件。
复制还是很麻烦,文件被损坏了,所以我想知道是否是由于压缩或复制文件造成的,所以我生成了一个crc32压缩文件。
我无法生成crc32该目录的原始内容,这意味着我无法使用crc32它。是否可以?
另外,如果我设法比较这两个数字,如果它们相同,则意味着文件没有受到损害?
我正在运行一个脚本,将文件从一个位置复制到另一个位置。在脚本中,我使用原始文件和复制文件的以下命令计算 MD5sum,它们是不同的:
echo -n "file" | md5sum
Run Code Online (Sandbox Code Playgroud)
为什么同一个文件有不同的MD5sum?复制命令在 Linux 中会改变什么吗?我还检查了校验cksum filename和,它也有所不同。
我正在尝试使用以下命令验证文件:
$ md5sum myfile_v2.1.ova -c myfile_v2.1.md5
md5sum: myfile_v2.1.ova: no properly formatted MD5 checksum lines found
myfile_v2.1.ova: OK
Run Code Online (Sandbox Code Playgroud)
退出状态代码似乎是 1
$ echo $?
1
Run Code Online (Sandbox Code Playgroud)
然而读出时help的md5sum命令,strict模式(其将失败时格式化issues`)应当明确启用;
$ md5sum --help | grep -- --strict
--strict exit non-zero for improperly formatted checksum lines
Run Code Online (Sandbox Code Playgroud)
为什么最重要的是我得到了一个OK关于文件的信息?