它是脚本还是二进制文件?

它是脚本还是二进制文件?

最后,看起来这只是一个常规的 sh 脚本:

[USER@MACHINE ~/Desktop/D] head -2 truecrypt-7.1-setup-x86 
#!/bin/sh
CHECKSUM=163123652

但@脚本结束:

[USER@MACHINE ~/Desktop/D] tail -2 truecrypt-7.1-setup-x86 
5��\V<Rx+÷o��6ܺF!&8�ʷ�����^��T4
Sk�!�0"�W���L�`���Su�VP�!m�]5����C'}�/���%�������8�4�?�N;:��zgf�q�14S%oL�hҌz����+����Ƥ<'��jN7)m�H�^�ɧa��:�S��

答案1

文本和二进制之间的唯一区别在于你如何解释它。*nix 倾向于不是解释它们,所以以这种方式混合它们就可以了;脚本的文本部分可以使用各种命令提取脚本的二进制部分的内容。

答案2

这是我在安装人员中看到的常见技巧。通常,二进制部分是一个存档,顶部有用于提取它的命令。

答案3

“这个文件怎么可能还包含 ASCII + 二进制数据?”

原因很简单,因为 ASCII 文本只是二进制数据的子集。

相关内容