Terminal, shell i PATH
Jedno z ważniejszych wyjaśnień tego rozdziału: co naprawdę dzieje się, gdy wprowadzasz polecenie i naciskasz Enter.
Terminal i shell
Terminal jest okno programu, w którym wpisujesz polecenia tekstowe i widzisz
Odpowiedź tekstowa na komputerze. Shell (powłoka poleceń) to program, który
Wewnątrz terminala faktycznie odczytuje twoje polecenie i decyduje, co z nim zrobić. Na Windows tego
Zazwyczaj PowerShell lub klasyczne cmd, na macOS i Linux – najczęściej zsh
lub bash.
Komenda zazwyczaj składa się z nazwy programu i, w razie potrzeby, argumenty —
dodatkowe słowa po niej: w python --version sam w sobie
python — drużyna, a --version jest argumentem.
Ścieżka, system plików i aktualny folder
Shell zawsze „stoi” obecna działalność folder (current directory). Ścieżka (path) to adres pliku lub folderu w systemie plików. Ścieżka może wyglądać:
- absolutny — zaczyna się od korzenia dysku, np.
C:\Users\anna\projectlub/home/anna/project, i działa z dowolnego miejsca; - krewny jest na przykład liczona z bieżącego folderu
./projectczy po prostuproject.
PATH zmienna środowiskowa
Kiedy wpisujesz krótką komendę typu pythonkomputer nie
szuka pliku na całym dysku — to zajęłoby zbyt dużo czasu. Zamiast tego shell patrzy na
specjalny folder lista — zmienna środowiskowa PATH — i sprawdza je względem
kolejki w określonej kolejności, aż znajdzie plik wykonywalny o tej nazwie.
/usr/local/bin
/usr/bin
/bin
~/.local/bin
Jeśli wybierzesz numer python, shell sprawdzimy
/usr/local/bin/python, więc /usr/bin/python
i tak dalej, i uruchamia pierwszy znany plik. Jeśli żaden z folderów nie PATH takim plikiem
Nie – zobaczysz błąd taki jak command not found (macOS/Linux) lub
'python' is not recognized... (Windows).
python może mieć zupełnie inną wersję niż ta, którą właśnie zainstalowałeś. Rozdział 2.6 nauczy cię, jak to sprawdzić.