ディレクトリのshスクリプトに「x」を追加しました。
$ 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
必要でない場合は使用しないでください。