LINUX 是通过权限和文件内容
比如,WINDOWS 下一个 .exe 文件,执行的时候会根据后缀 .exe 来加载文件头(也叫MZ头),然后处理分段执行
而一个 .com 文件,是一个纯二进制文件,直接读到内存中去运行
而 .bat 文件是批处理文件,类似 linux 里面的 shell
倘若把 .exe 改成 .com,或者把 .bat 改成 .exe,就会造成错误或者死机
Linux 却不同,它不管文件的后缀名,但只要有可执行权限,他就会去尝试执行这个程序
#! /bin/bash
#! /usr/bin/perl
#! /usr/local/php/bin/php
还有 ELF 头格式
不同的文件头决定了不同的执行方式,与后缀名无关
在 Windows 里,后缀名是一个注记符,也起着规定执行方式的重要使命
而在 Linux 里,后缀名仅仅是一个注记符而已
延伸阅读
文章来源于领测软件测试网 https://www.ltesting.net/