Из info coreutils cat
--binary
On MS-DOS and MS-Windows only, read and write the files in binary
mode. By default, `cat' on MS-DOS/MS-Windows uses binary mode
only when standard output is redirected to a file or a pipe; this
option overrides that. Binary file I/O is used so that the files
retain their format (Unix text as opposed to DOS text and binary),
because `cat' is frequently used as a file-copying program. Some
options (see below) cause `cat' to read and write files in text
mode because in those cases the original file contents aren't
important (e.g., when lines are numbered by `cat', or when line
endings should be marked). This is so these options work as
DOS/Windows users would expect; for example, DOS-style text files
have their lines end with the CR-LF pair of characters, which
won't be processed as an empty line by `-b' unless the file is
read in text mode.
Это выдумка не виндов. Это было придумано задолго до Windows, MS-DOS и (IMO, меня тогда еще почти не было) Unix. Корни этой традиции скорее всего в обработке символов CR и LF древними печатающими устройствами.