私はCentosサーバーにいて実行しようとしたとき
./script.sh
Permission Denied
追加しようとしてもエラーが発生しますchmod +x script.sh
。
sh script.sh
それでも動作します。
修正する
スクリプトファイルは次から始まります。#!/bin/sh
答え1
あなたのスクリプトに「shebang」がありません。システムは、スクリプトを実行するためにどのインタプリタを実行する必要があるかを読み取ろうとします。システムは最初の行にあり、で始まる場合は「shebang」を認識します#!
。
例:
#!/bin/bash
#!/bin/sh
#!/usr/bin/env python
#!/bin/sed
ほとんどのスクリプト言語ではこれは#!
コメントであるため、次のように特定のインタプリタを使用してコマンドラインで実行してもエラーは発生しません。
$ bash ./script.sh