“执行”权限有什么作用?

use*_*326 40 linux permissions

我很震惊,我仍然不明白 Linux 中的“执行”权限。

共有三种权限——读、写和执行。我从字面上理解读取和写入,但是执行究竟是做什么的?

假设我有example.php执行权限。我能做example.php什么?

bdk*_*bdk 40

基本上这意味着您可以告诉操作系统运行文件中的代码。例如,如果文件是二进制可执行文件,读访问将允许您查看它,写访问将允许您修改它,但没有执行权限您将无法运行该程序。在脚本的情况下,它有点复杂,因为您不一定需要“运行”程序,您只需将其内容读入解释器,它本身具有执行权限,但您不需要执行脚本本身的权限。

Linux 中的一些脚本本身是可执行的,你经常会在顶部看到一行

#!/bin/bash
Run Code Online (Sandbox Code Playgroud)

或者

#!/bin/python
Run Code Online (Sandbox Code Playgroud)

该行告诉内核可以通过调用相关程序(而不仅仅是文本)来执行该文件。然后你可以像这样运行你的脚本

./script
Run Code Online (Sandbox Code Playgroud)

而不是必须做

python ./script
Run Code Online (Sandbox Code Playgroud)


小智 19

“execute”允许用户执行可执行文件。对于目录,允许使用 cd 命令进入目录。

  • 对目录部分的访问是巨大的。仅从模式名称本身你绝对猜不到这一点。 (4认同)