問題:vscodeのターミナルでanaconda3を起動させようとすると読込先のパスがおかしくなる問題が起きた
condaコマンドを実行するときに参照する場所へのパスが「タイポみたいなパス」になってしまった。
og3@3rdman MINGW64 ~
$ conda info
bash: C:\Users\og3naconda3\Scripts: No such file or directory
当然、.bashrcや.bash_profileにこのような記述はない。conda intで生成されたパスが正しく書いてある。
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
if [ -f '/c/Users/og3/anaconda3/Scripts/conda.exe' ]; then
eval "$('/c/Users/og3/anaconda3/Scripts/conda.exe' 'shell.bash' 'hook')"
fi
# <<< conda initialize <<<
現象:git-bash単体とvscode経由のgit-bashで$PATHの内容が違う
git-bash単体だと以下のように正しいパスになる。
@git-bash単体 og3@3rdman MINGW64 ~ $ echo $PATH /c/Users/og3/anaconda3/condabin:/c/Users/og3/bin:/mingw64/bin:~略~
@vscode経由のgit-bashog3@3rdman MINGW64 ~ $ echo $PATH C:\Users\og3naconda3;C:\Users\og3naconda3\Library\mingw-w6in;C:\Users\og3naconda3\Library\usin;C:\Users\og3naconda3\Librarin;C:\Users\og3naconda3\Scripts;C:\Users\og3nacondain;C:\Users\og3naconda3/c/Users/og3/bin:/mingw64/bin:/usr/local/bin:/usr/bin:/bin:/c/Users/og3/anaconda3
vscode経由だとスラッシュがバックスラッシュになってるし、バックスラッシュ+aとかがエスケープされるとかあるのか?
\aは「ASCII Bell(制御文字)」として定義されています(コード 0x07)。
もし単なる\aという文字列として扱いたいなら、\\aのようにバックスラッシュをエスケープする必要があります。
print("\\a") # 出力:\a
やっぱり「エスケープシーケンス」として解釈される模様。。困る。。
暫定解決:vscodeをwindowsのスタートメニューから起動したら$PATHの値が元に戻った
ここから開く。とまともな$PATHを返してくれる。
一方で、「タスクバー」にピン止めしてあるvscodeを開くと$PATHがバグる。。
いちいち「新しいウィンドウ」から開くと、ディレクトリを開きなおしたりなど不便なので何とかしたい。。
コメント