Shell 二进制文件中ASCII数据结尾的提示

Shell 二进制文件中ASCII数据结尾的提示,shell,unix,binary,ascii,binaryfiles,Shell,Unix,Binary,Ascii,Binaryfiles,我正在开发一个软件,它以二进制文件格式存储数据。然而,出于对无辜的shell用户的礼貌,他们可能cat来检查这样一个文件的内容,我考虑在文件的开头有一个与ASCII兼容的“魔术字符串”,告知二进制格式的名称和版本 我想在消息中至少有十行(\n),这样默认情况下,头的设置不会影响二进制部分 现在,我想知道是否有任何控制字符或转义代码会向shell提示以下内容不能解释为可打印文本,应该忽略它?我尝试了0x00(空字节)和0x04(ctrl-D),但在cat处理文件时,它们似乎被忽略了。cat将文件视

我正在开发一个软件,它以二进制文件格式存储数据。然而,出于对无辜的shell用户的礼貌,他们可能
cat
来检查这样一个文件的内容,我考虑在文件的开头有一个与ASCII兼容的“魔术字符串”,告知二进制格式的名称和版本

我想在消息中至少有十行(
\n
),这样默认情况下,
的设置不会影响二进制部分


现在,我想知道是否有任何控制字符或转义代码会向shell提示以下内容不能解释为可打印文本,应该忽略它?我尝试了
0x00
(空字节)和
0x04
(ctrl-D),但在
cat
处理文件时,它们似乎被忽略了。

cat将文件视为文本。无法触发文件结尾,因为EOF实际上不是任何字符

当然,工作的另一种方式;指定仅从上的某个字符开始读取二进制格式的格式