Anacondaの 環境の管理 に関するドキュメントでは、環境のアクティブ化は次を使用して行われると述べています。
source activate <env-name>
Condaがインストールされている場合、activate
がパスに含まれていることに気づきました。
$ which activate
/Users/dilum/anaconda/bin/activate
ソースはパス内のファイルも検索しますか?また、2番目のパラメーター(環境名)はactivate
スクリプトによって単純に処理されると思いますか?
組み込みsource
の詳細は ss64のmanページ にあります。
ファイル名への正確なパスを指定しない限り、bashは最初にPATH変数を介して検索し、次に現在のディレクトリを検索します($ PATHにファイル名が見つからない場合のみ)。引数が指定されている場合、それらはファイル名の実行時に定位置パラメーターになります。それ以外の場合、定位置パラメーターは変更されません。
そう、
source activate <env-name>
呼んでいる /Users/dilum/anaconda/bin/activate
を使用して、目的の環境名を引数として渡します。