前提・実現したいこと
パスを通したい。
.zshrc にパスを記入し、保存もしているのですが、パスが通らず困っています。lucky.py はboring_python内のファイルです。
アドバイスをお願いします。
発生している問題・エラーメッセージ
which lucky.py lucky.py not found
.zshのソースコード 最後にパスを追加しました
export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)" # >>> conda initialize >>> # !! Contents within this block are managed by 'conda init' !! __conda_setup="$('/Users/noguchitomoya/opt/anaconda3/bin/conda' 'shell.zsh' 'hook' 2> /dev/null)" if [ $? -eq 0 ]; then eval "$__conda_setup" else if [ -f "/Users/noguchitomoya/opt/anaconda3/etc/profile.d/conda.sh" ]; then . "/Users/noguchitomoya/opt/anaconda3/etc/profile.d/conda.sh" else export PATH="/Users/noguchitomoya/opt/anaconda3/bin:$PATH" fi fi unset __conda_setup # <<< conda initialize <<< #ここより下に追加したいパスを記入すれば良い? export PATH=$PATH:/Users/noguchitomoya/Documents/Programming/boring_python
試したこと
source ~/.zshrc のターミナルでの実行はしています。
lucky.py は実行可能ファイルですか?
chmod +x /Users/noguchitomoya/Documents/Programming/boring_python/lucky.py
で実行することができました。ありがとうございます。
追加の質問なのですが、実行したいすべてのファイルでchmodをしなければならないのでしょうか。また、パスを通してても、whichではnot foundとなるのはなぜでしょうか。
> 実行したいすべてのファイルでchmodをしなければならないのでしょうか。
はい。chmod +x されてないものが実行できてしまってはセキュリティ上の問題になりますから。
> また、パスを通してても、whichではnot foundとなるのはなぜでしょうか。
chmod +x されてないものは実行されませんので、ehich でも無視されます。
よく理解できました。
丁寧な回答ありがとうございます。
補足すると、whichで探すには実行可能にする(そしてPATHで設定されたディレクトリのどれかに置く)必要がありますが、すべてのコードをそうする必要はありません。
試しに実行するとか一度だけ実行したいとかであれば、(コードを置いたディレクトリにcdコマンドで移動してから)「python lucky.py」するとか、(コードへのパスを含めて)「python ~/Documents/Programming/boring_python/lucky.py」みたいに、pythonコマンドの引数に指定してください。
回答1件
あなたの回答
tips
プレビュー