13

The dd manual page is very limited on this: `

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

This does not say anything about the actual output, which looks something like this when I copy a large image file, e.g.:
dd if=input.img of=output.img status=progress

results in:

enter image description here

The transfer speed and the copying time so far is obvious, but what do the first three numbers mean?

1 Answer 1

17

The first number (1207841280) is the number of bytes copied so far. The second number is this interpreted as the SI unit Gigabytes (1 GB is 10003 bytes). The third number is this interpreted as the IEC unit Gibibytes (1 GiB is 10243 bytes). Notice the difference between "GB" and "GiB".

The source code of the dd command in the GNU coreutils package uses variables called si and iec to hold the last two of these numbers. See the print_xfer_stats function in dd.c. The actual output happens on line 821.

3
  • 8
    Oh okay, I totally missed the units.
    – Jan M.
    Aug 14, 2017 at 18:49
  • 3
    @JanM. I did too. I didn't see them until after I had it figured out from the source!
    – Kusalananda
    Aug 14, 2017 at 18:57
  • 2
    I landed here because I was looking for the transfer speed measurement unit (SI vs. IEC) and was too lazy to dig through the source code. As it turns out, the transfer speed is measured in SI units. This is also consistent with the notation in the dd output, as IEC units have an extra 'i' between the multiplier and the unit (the 'B'). Note that there's no 'i' in the transfer speed units. Thanks @Kusalananda for the excellent answer and for pointing out the exact source code file. Jul 5, 2021 at 1:10

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .