我从来没有明白这一点,因为如果你有读取文件的权限,这是否意味着你可以把它复制到别的地方,这样就可以执行它了?
我错过了什么?
可执行标志在那里向内核指示数据应该被读取然后运行。 这是通过执行某些事情和阅读某些东西的不同调用来实现的。 对于已编译的程序,很可能只有执行权限,并且没有读权限; 你甚至不能在别处“cp”。 对于像shell脚本这样的解释项目,读取是需要执行的。
我知道一个Linux发行版使用execute标志来控制在启动时触发的脚本。
简而言之,Execute标志用于指示编译代码的运行能力。 解释的代码通过父处理器运行,可能只需要“读取”。
一些潜在的原因:
可能还有其他原因
这并不意味着你可以将它复制到其他地方,从而允许你执行它吗?
不,这是不正确的。
有些情况下,即使设置了可执行位,也无法执行文件。 这里至less有两个: