为什么我能够执行仅具有读取权限的文件?

为什么我能够执行仅具有读取权限的文件?

我能够执行刚刚具有读取权限的文件:

nkrish@maddev2:~$ ls -l NewFile.sh 
-r--r--r-- 1 nkrish nkrish 14 2016-01-14 12:01 NewFile.sh

sh NewFile.sh
.. File gets run... 

难道不应该按照文件权限r-x来执行这个吗?

当前用户的权限为只读(r--)。

为什么是这样?

答案1

您没有执行NewFile.sh,而是正在执行命令sh,可能/bin/sh将其NewFile.sh作为参数传递。

sh碰巧读取了此文件中的内容并执行它。它在设计上不检查执行权限,假设您知道自己在做什么。

相关内容