Przejdź do treści
Lekcja 1 z 117

Kurs › Moduł 0 › Lekcja 1

Czarne okienko, którego nie trzeba się bać

⏱ ok. 4 min czytania· moduł 0: Pierwsze kroki

Po tej lekcji: kursant otwiera terminal, wpisuje pierwsze komendy i rozumie, co się właściwie dzieje.

Wstęp

Tak wygląda terminal w filmach. Haker wpisuje trzy linijki i ma dostęp do Pentagonu.

A tak wygląda w pracy admina. Wpisuję jedną komendę, czekam, wpisuję drugą, googluję, dlaczego pierwsza nie zadziałała.

Ale jest jedna rzecz, którą filmy pokazują dobrze. Ktoś, kto umie terminal, robi w minutę to, co klikaniem zajmuje godzinę. Zmienić nazwę tysiąca zdjęć z wakacji? Jedna linijka. Sprawdzić, który z pięciuset plików zajmuje najwięcej miejsca? Jedna linijka. Codziennie o trzeciej w nocy zrobić kopię zapasową serwera? Kilka linijek, raz napisanych, i zapominasz o problemie na lata.

W tym kursie nauczysz się tego od zera. Od pierwszego otwarcia tego czarnego okienka do pisania skryptów, którymi admini obsługują setki serwerów. Bez znajomości programowania na starcie.

Co to jest terminal, a co Bash

Wyobraź sobie urząd. Jest okienko, a za szybą siedzi urzędnik.

Ty podchodzisz do okienka i podajesz wniosek: „proszę pokazać mi listę moich dokumentów”. Urzędnik czyta, wykonuje i oddaje Ci odpowiedź.

Terminal to okienko. To program, który pokazuje Ci tekst i pozwala coś wpisać. Samo okienko niczego nie załatwia.

Bash to urzędnik za szybą. To program, który czyta to, co wpiszesz, i wykonuje. Takiego urzędnika fachowo nazywa się powłoką, po angielsku shell.

Komenda to wniosek. Mówi, co zrobić i z czym.

Urzędników jest kilku. Na Macu domyślnie siedzi taki o imieniu zsh. Na większości Linuxów właśnie Bash. Wszyscy mówią bardzo podobnym językiem, ale my uczymy się Basha, bo jest na niemal każdym serwerze świata.

Jak otworzyć terminal

Linux (np. Ubuntu): skrót Ctrl+Alt+T albo wpisz „Terminal” w menu. Gotowe, masz Basha.

Windows: Windows ma własnych urzędników, którzy mówią innym językiem. Najprościej zainstalować Linuksa wewnątrz Windowsa, przez dodatek od Microsoftu. Otwierasz PowerShell jako administrator, wpisujesz jedną komendę, restartujesz komputer i masz Ubuntu z Bashem.

wsl --install

Mac: otwórz aplikację Terminal. Uwaga, domyślnie przywita Cię zsh, a nie Bash. Bash też jest na Macu, ale w wersji sprzed prawie dwudziestu lat. Do pierwszych lekcji to nie przeszkadza, ale od połowy kursu będziemy używać rzeczy, których stary Bash nie zna. Dlatego polecam Linuksa w okienku albo zainstalowanie nowego Basha.

brew install bash (wymaga Homebrew), potem uruchamiasz go komendą bash

Pierwsze słowa

Widzisz coś takiego jak eryk@laptop:~$. To jest znak zachęty. Urzędnik mówi: „słucham”.

Przed małpą jest nazwa użytkownika, po niej nazwa komputera, a ten znak dolara na końcu to po prostu „możesz pisać”. Tyldę wyjaśnimy w następnej lekcji.

Wpisz:

echo "Cześć, terminalu"

I naciśnij Enter.

Terminal odpowiada: Cześć, terminalu. Gratulacje, właśnie wydałeś pierwsze polecenie. echo znaczy po angielsku „echo” i robi dokładnie to: powtarza, co mu powiesz. Jak papuga, tylko nie gryzie.

Teraz dwie kolejne:

whoami
date

whoami, czyli „kim jestem”, podaje Twoją nazwę użytkownika. Komputer odpowiada na pytanie, które ludzie zadają sobie przez całe życie, i to w ułamku sekundy. date podaje datę i godzinę.

Jak zbudowana jest komenda

Każda komenda ma ten sam kształt, jak wniosek w urzędzie:

komenda -opcje argumenty, każda część w innym kolorze

  1. Komenda — co zrobić. Na przykład date.
  2. Opcje — jak to zrobić. Zwykle zaczynają się od minusa.
  3. Argumenty — z czym to zrobić. Na przykład nazwa pliku.

Przykład z opcją:

date "+%d.%m.%Y"

Teraz data wychodzi po polsku, w formacie dzień, miesiąc, rok. Ten dziwny napis w cudzysłowie to wzór. Nie musisz go pamiętać, pokazuję tylko, że jedną komendę da się dopasować do siebie.

⚠ Typowy błąd

Wpisz z literówką:

daet

Terminal odpowie, że nie zna takiej komendy. Po angielsku: command not found.

I to jest najważniejsza lekcja dzisiejszej lekcji. Nic się nie zepsuło. Urzędnik po prostu nie zrozumiał wniosku i cię o tym poinformował. Terminal nie wybuchnie, komputer się nie spali. Większość błędów w terminalu wygląda właśnie tak: czytasz komunikat i poprawiasz.

Ale uczciwie: są też komendy, które robią dokładnie to, co im każesz, nawet jeśli każesz źle. Na przykład kasowanie. O nich powiemy osobno i z dużym ostrzeżeniem.

Dwa skróty na dziś

  • clear albo Ctrl+L czyści ekran, jak masz za dużą ściankę tekstu.
  • exit zamyka terminal. Albo Ctrl+D.

✎ Zadanie

Otwórz terminal i spraw, żeby wypisał Twoje imię i dzisiejszą datę w polskim formacie. Dwie komendy. Rozwiązanie znajdziesz pod spodem.

Pokaż rozwiązanie
echo "Eryk"
date "+%d.%m.%Y"

Jeśli zadziałało, gratulacje. Jeśli terminal napisał command not found, sprawdź literówki. Dziewięć na dziesięć błędów w terminalu to literówki. Dziesiąty to też literówka, tylko lepiej ukryta.

Co dalej

Następnym razem: gdzie ja właściwie jestem? Bo terminal zawsze jest „gdzieś”, w jakimś folderze. Nauczymy się po nich chodzić szybciej niż myszką.