## 事象 以下のように[[declare]]で変数宣言する。 ```bash declare -r HOGE="hogehoge" ``` 実行するとエラーになる。 > [!error] > declare not found ## 原因 `sh`コマンドで実行している場合、[[Bash]]以外の[[Shell]]で実行されて可能性がある。 ```console sh hoge.sh ``` [[Bash]]でなければ[[Bash]]の文法が使える保証はないからエラーになる。 ## 解決方法 明示的に[[Bash]]を使うようにする。 ```console bash hoge.sh ``` もしくは[[シバン]]で指定して、シェルファイルを実行してもよい。