If there is a file of size 2887069 B in the folder, LC_ALL=C ls -l --all --human-readable shows 2.8M as the size and LC_ALL=C ls -l --all --human-readable --si shows 2.9M.
M is an SI-prefix which means factor 1000^2 but ls uses it for factor 1024^2, too, where Mi would be the official prefix; see for example https://en.wikipedia.org/wiki/Byte#Multiple-byte_units and https://physics.nist.gov/cuu/Units/binary.html.
I think the output with --human-readable should be changed such that it shows the standardised prefixes and the unit, e.g. without --si MiB instead of M and with --si MB instead of M.
Since --human-readable is meant for humans and not parsers, there should be no backwards-compatibility problem if the output format is changed.
(my coreutils version: 9.11-2)
If there is a file of size 2887069 B in the folder,
LC_ALL=C ls -l --all --human-readableshows2.8Mas the size andLC_ALL=C ls -l --all --human-readable --sishows2.9M.M is an SI-prefix which means factor 1000^2 but
lsuses it for factor 1024^2, too, where Mi would be the official prefix; see for example https://en.wikipedia.org/wiki/Byte#Multiple-byte_units and https://physics.nist.gov/cuu/Units/binary.html.I think the output with --human-readable should be changed such that it shows the standardised prefixes and the unit, e.g. without --si
MiBinstead ofMand with --siMBinstead ofM.Since --human-readable is meant for humans and not parsers, there should be no backwards-compatibility problem if the output format is changed.
(my coreutils version: 9.11-2)