W jaki sposób źródło conda aktywuje działanie Foo

15

Dokumentacja Anaconda do zarządzania środowiskami stwierdza, że ​​aktywacja środowiska odbywa się za pomocą:

source activate <env-name>

Zauważyłem, że po zainstalowaniu conda activatejest na ścieżce:

$ which activate
/Users/dilum/anaconda/bin/activate

Czy źródło również znajduje pliki na ścieżce? I przypuszczam, że drugi parametr (nazwa środowiska) jest po prostu przetwarzany przez activateskrypt?

Dilum Ranatunga
źródło

Odpowiedzi:

15

Znaleziono szczegóły wbudowanego sourcew strony podręcznika ss64 .

O ile nie podasz dokładnej ścieżki do nazwy pliku, bash najpierw sprawdzi zmienną PATH, a następnie w bieżącym katalogu (tylko jeśli nazwa pliku nie zostanie znaleziona w $ PATH.) Jeśli podano argumenty, stają się parametrami pozycyjnymi podczas wykonywania nazwy pliku . W przeciwnym razie parametry pozycyjne pozostają niezmienione.

Więc,

source activate <env-name>

wywołuje /Users/dilum/anaconda/bin/activatei przekazuje żądaną nazwę środowiska jako argument.

Dilum Ranatunga
źródło