質問: Catalinaがzshを標準にしたらしいので使っていたbashをzshに変えたのですが、シェルスクリプトを実行する際にshコマンドが省略できなくなっているのを気づきました。 例えばjisakuというシェルスクリプトがあるとすると ``` # 実行できる % sh jisaku # 実行できる % ./jisaku # 実行できない # zsh: command not found: jisakuとなる % jisaku ``` パソコンに自作コマンドを入れてパス通している場合とかは、これじゃ使えなくありませんか?自作コマンドパス通している時にはどうやって使ったらいいでしょうか? だれか教えていただけたらすごく助かりますm(_ _)m 補足 今回追加した自作コマンドに関する情報をもう少し詳しく補足させていただきました。 zshにしてからhogeというコマンドでテストしています。 詳細は下記です。 ``` # パス確認 % echo $PATH /Users/kimsungmin/.pyenv/shims:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:~/myCommands:~/Desktop/hoge # パス追加 % cat ~/.zshrc eval "$(pyenv init -)" export PATH="$PATH:~/myCommands" export PATH="$PATH:~/Desktop/hoge" # hogeコマンドの内容 % cd ~/Desktop/hoge % cat hoge #! /bin/zsh echo "hogehoge" # 実際コマンドを叩いたら、、 % hoge zsh: command not found: hoge # shを付けたら普通に動きます。 % sh hoge hogehoge # ちなみにwhichはbashの時もzshの時も同じく出ないです。 % which hoge hoge not found ```
回答: そのディレクトリにPATHが通ってないのでしょう。 `.bash_profile`(か`.bashrc`)に書いてあるPATH設定を、`.zlogin`(か`.zshrc`)にも入れましょう。