当选择选项 status=progress 时,如何解释 dd 的输出?

当选择选项 status=progress 时,如何解释 dd 的输出?

dd 手册页对此非常有限:`

status=LEVEL
              The LEVEL of information to print to stderr; 'none' suppresses
              everything but error messages, 'noxfer' suppresses the final
              transfer statistics, 'progress' shows periodic transfer
              statistics

这并没有说明实际输出,当我复制大图像文件时,它看起来像这样,例如:
dd if=input.img of=output.img status=progress

结果是:

在此输入图像描述

到目前为止的传输速度和复制时间是显而易见的,但是前三个数字意味着什么?

答案1

第一个数字 (1207841280) 是迄今为止复制的字节数。第二个数字被解释为 SI 单位千兆字节(1 GB 是 1000 3字节)。第三个数字被解释为 IEC 单位千兆字节(1 GiB 是 1024 个3字节)。请注意“GB”和“GiB”之间的区别。

ddGNU coreutils 包中命令的源代码使用名为si和的变量iec来保存这些数字的最后两个。看print_xfer_stats中的函数dd.c。实际输出发生在第 821 行。

相关内容