Wstęp
Na rynku dostępnych jest wiele terminali.
Od domyślnych „Terminal” (MacOS) oraz „Wiersz poleceń” (Windows), po bardziej rozbudowane i nowoczesne narzędzia typu OhMyZsh (to akurat nie „terminal”), Hyper czy nawet i terminal wbudowany w Visual Studio Code.
Mamy też różne shelle (program pozwalający komunikować się człowiekowi z komputerem).
Być może kojarzycie takie nazwy jak PowerShell, Bash czy Zsh.
Jest między nimi kilka różnic (np. w Zsh szybciej działa autouzupełnianie, niż w Bashu, Zsh poprawi literówki, ma więcej motywów itd.).
Nie będę się skupiał na wszystkich różnicach, bo dla początkujących użytkowników nie są one aż tak ważne.
Dla ciekawskich – w tym artykule znajdziecie fajne porównanie Zsh i Basha.
Podstawy terminala
Jeśli korzystacie z MacOS czy Linuxa – świetnie, wasze życie właśnie stało się prostsze. 🙂
MacOS domyślnie korzysta z Zsh, Linux z Basha.
Windows niestety nie wspiera natywnie ani jednego, ani drugiego. Możecie spróbować zainstalować Zsh z jakimś poradnikiem (niestety będzie przy tym nieco zabawy, ale myślę, że warto).
Możecie też pobrać Gita, tam powinien automatycznie zainstalować się Bash.
Po uruchomieniu terminala nie spotkamy się tu z GUI (graficzny interfejs) jak w typowych aplikacjach na komputer. Wszystko robimy za pomocą komend, przez co na pierwszy rzut oka może się wydawać, że korzystanie z terminala jest bardzo skomplikowane.
Na szczęście to tylko pozory, a do płynnej pracy z tym narzędziem wystarczy opanować kilka prostych komend. 😉
Komendy
Otwórz terminal, wpisz poniższe komendy i zobacz, co pokaże się w okienku:
pwd
(print working directory) – wskazuje na obecną lokalizację,ls
(list) – lista wszystkich plików i folderów w obecnej lokalizacji (podgląd na zdjęciu wyżej, te niebieskie nazwy to foldery, białe to pliki – kolory będą się różnić w zależności od terminala i motywu, z jakiego korzystacie),clear
– czyści terminal,mkdir
(make directory) – tworzy nowy folder,touch
– tworzy plik (np.touch test.txt
stworzy plik tekstowy o nazwie test)open .
– otwiera folder, w którym się znajdujemy (tylko MacOS),explorer .
– to samo co open, natomiast działa na Windowsie,rm
(remove) – usuwa plik/folder (odradzam korzystanie z tej komendy! Jak chcemy coś usunąć, zróbmy to za pomocą GUI, czyli Findera / eksploratora plików, aby uniknąć problemów 😉 ),sudo
(super user do) – działa na MacOS, coś jakPPM -> "uruchom jako admin"
na Windowsie. Jeśli nie możemy np. zainstalować jakiejś paczki z powodu braku uprawnień, wystarczy dodać sudo na początku polecenia,cd nazwa_folderu
(change directory) – pozwala zmienić lokalizację (np.cd projekty
).
Jeśli nazwa folderu składa się z kilku słów, należy umieścić ją w cudzysłowie (cd "bardzo długa nazwa pliku"
).
Spójrzcie na zdjęcie poniżej. Na pulpicie mam kilka folderów ze słowem MMC.
Po wpisaniu cd „MMC i wciśnięciu Tab, Zsh automatycznie podpowiada mi, do jakich folderów mogę przejść.
Możemy również podawać dłuższe ścieżki, jeśli znamy nazwy wszystkich folderów.
Załóżmy, że mamy strukturę: pulpit/projekty/projekt 123
i jesteśmy obecnie na pulpicie.
Możemy wpisać dwa razy cd
, a więc cd projekty
, aby przejść do katalogu z projektami, a następnie cd "projekt 123"
.
Możemy też napisać cd projekty/"projekt 123"
. Efekt będzie dokładnie taki sam.
cd ..
– cofa się poziom wyżej.
Jeśli mamy strukturę /pulpit/projekty/projekt 123
i jesteśmy obecnie w folderze projekt 123, to wpisując cd ..
przejdziemy poziom wyżej, a więc do folderu projekty.
Ponowne wpisanie cd ..
przeniesie nas na pulpit.
Oczywiście kropki również możemy zagnieżdżać, a więc aby cofnąć się dwa poziomy wyżej, możemy wpisać cd ../..
Flagi i skróty klawiszowe
Flagi
Flagi możemy zapisać na dwa sposoby. W sposób standardowy oraz skrócony.
--version / -v
– sprawdzamy wersję (np. node -v
)--force / -f
– wymuszamy działanie czegoś
Skróty klawiszowe
Aby zakończyć działanie jakiegoś skryptu (np. mamy lokalnie odpalony serwer lub nasłuchujemy na zmiany w kodzie), w terminalu wciskamy kombinację ctrl + c
.
Czasem może okazać się, że nie możemy zakończyć aktualnej operacji w ten sposób. Należy wtedy spróbować klawisz Esc
lub q
.
cmd + t / ctrl + t
– otwiera nową kartę w terminalu, dzięki czemu możemy mieć uruchomionych kilka rzeczy jednocześnie / pracować w kilku lokalizacjach.cmd + w / ctrl + w
– zamyka aktywną kartę.ctrl + tab
– przeskakiwanie pomiędzy otwartymi kartami.
Wskazówki
- Za pomocą strzałek góra/dół możemy poruszać się między wcześniej wpisanymi poleceniami.
- W terminalu możemy skorzystać z tyldy
~
. Tylda odnosi się do głównego/domowego folderu na dysku. - Często patrząc na terminale w poradnikach czy instrukcje instalacji paczek NPM, możesz dostrzec znak
$
na początku linii.
$ npm install package_name
Jeśli widzisz coś takiego, nie wpisuj $
na początku. 😉
Znak dolara w Bashu oznaczał, że dana linijka kodu przeznaczona była do użycia w terminalu. Zsh w ogóle nie korzysta z tego typu zapisu.