How to print float value from binary file in shell?
This doesn't use Python and is a widely-used external tool, Perl.
perl -e "print pack('d>',0.123)" > file.bin
perl -e "print unpack('d>',<>)" < file.bin
0.123
Or you can use GNU od
utility, e.g.:
od -tfD file.bin
0000000 0.123
0000010
Where -t
parameter specifies the output format for floating-point number (f
) followed by optional size specifier (F
for float, D
for double or L
for long double), in short -tfD
can be replaced by -e
or -F
. To print only value without address, -A n
can be specified.
od -f <filename>
That will dump your file as floats.
od
is a standard Linux tool, and it's what I use. The manpage reads:
od - dump files in octal and other formats