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