linux - 为什么我们需要执行权限,尽管我们可以使用 "bash script file"运行任何脚本而不需要它?

标签 linux bash shell command-line

我想知道在 linux 中我们何时以及为什么需要执行权限,尽管我们可以在使用以下语法执行该脚本时无需执行权限即可运行任何脚本?

bash SomeScriptFile

最佳答案

并非所有程序都是脚本——例如 bash 就不是。所以你需要可执行程序的执行权限。

此外,当您说 bash SomeScriptFile 时,脚本必须位于当前目录中。如果您有脚本可执行文件并且位于 PATH 的目录中(例如 $HOME/bin),那么您可以运行脚本而无需不必要的 bash $HOME/bin/SomeScriptFile(或 bash ~/bin/SomeScriptFile);你可以简单地运行 SomeScriptFile。这种经济值得拥有。

目录的执行权限当然有些不同,但也很重要。它允许“用户类别”(所有者、组、其他人)访问目录中的文件,同时受每个文件权限的约束。

关于linux - 为什么我们需要执行权限,尽管我们可以使用 "bash script file"运行任何脚本而不需要它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40534795/

相关文章:

bash - URL 中的空格导致 wget 失败

regex - Linux shell 脚本 : How to match substring with regex

linux - 在 BASH 中通过 Char 循环替换 Char

java - 在java中验证基于linux的用户

ruby - 我的 linux 终端中的 rvm 出现错误

ruby - 如何使用 Ruby 编写类似 shell 的脚本?

python - 如何使用 Python 右对齐 shell 中的段落?

linux - rhel 4中有存在/sbin/lilo吗?

java - 哪个在 Tomcat、Jboss AS 和 Glassfish 中表现更好?

bash - 如何使用密码管理器为 git push/pull 提供个人访问 token