Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5376018
  • 博文数量: 1144
  • 博客积分: 11974
  • 博客等级: 上将
  • 技术积分: 12312
  • 用 户 组: 普通用户
  • 注册时间: 2005-04-13 20:06
文章存档

2017年(2)

2016年(14)

2015年(10)

2014年(28)

2013年(23)

2012年(29)

2011年(53)

2010年(86)

2009年(83)

2008年(43)

2007年(153)

2006年(575)

2005年(45)

分类: LINUX

2005-08-18 14:14:22

WINDOWS 是以扩展名来决定文件执行方式的
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 里,后缀名仅仅是一个注记符而已


阅读(2779) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~