我已将“x”添加到目录中的 sh 脚本中:
$ whoami
alex
$ sudo chmod og+x ./scripts/*.sh
所以我有
$ ls -al ./scripts/
total 24
drwxr-xr-x 2 alex alex 4096 Jan 25 10:33 .
drwxr-xr-x 12 alex alex 4096 Jan 25 10:43 ..
-rw-r-xr-x 1 alex alex 228 Nov 24 09:37 aabbcc.sh
-rw-r-xr-x 1 alex alex 4455 Nov 24 16:29 deploy.sh
但是当我这样做时
$ ./scripts/deploy.sh
我会得到这个:
bash: ./scripts/deploy.sh: Permission denied
为什么没有效果?
答案1
您只向“组”和“其他”授予了可执行权限,但没有为文件所有者(即您)添加可执行权限。所以每个人都可以执行这个,除了你。因此,只需为所有者添加执行权即可:
chmod u+x ./scripts/*.sh
sudo
不需要时请勿使用!