CodeGym /Kursy /Docker SELF /Podstawy command line (CLI): struktura poleceń, praca z t...

Podstawy command line (CLI): struktura poleceń, praca z terminalem

Docker SELF
Poziom 1 , Lekcja 4
Dostępny

1. Wprowadzenie do command line w Linuxie

Dlaczego command line?

Zanim się zagłębimy, odpowiedzmy sobie na główne pytanie: po co w ogóle używać command line, skoro w Linuxie są fajne graficzne interfejsy? Command line (Command Line Interface, CLI) — to narzędzie profesjonalistów, adminów systemowych i programistów. Dzięki CLI możesz robić rzeczy szybciej, automatyzować nudne czynności i nawet odpalać zakulisową magię bez odrywania rąk od klawiatury. CLI to w zasadzie supermoc w świecie Linuxa, która pozwoli Ci być efektywnym.

Terminale, powłoki i CLI

Zanim wpiszesz swoje pierwsze polecenie, ogarnijmy, co kryje się za magią terminala.

1. Terminal

Terminal to program, który daje dostęp do command line. Pozwala komunikować się z systemem operacyjnym za pomocą tekstu. W Linuxie masz do wyboru takie popularne terminale:

  • GNOME Terminal (na GNOME).
  • Konsole (na KDE).
  • xterm (kultowy, ale już wiekowy).
  • Windows Terminal dla WSL

2. Powłoka (Shell)

Powłoka to oprogramowanie, które interpretuje polecenia i przekazuje je do systemu operacyjnego. W Linuxie najpopularniejszą powłoką jest Bash (Bourne Again Shell). Alternatywy:

  • Zsh: rozbudowana powłoka dla fanów customizacji.
  • Sh: klasyczna powłoka Unix (minimalizm).

Na start będziemy działać w Bash, bo to standard.


2. Struktura polecenia

Polecenie w CLI ma ścisły format i jego ogarnięcie to klucz do sukcesu.

Podstawowy format polecenia

Każde polecenie składa się z trzech części:

[Polecenie] [Opcje] [Argumenty]
  • Polecenie: to, co chcesz, żeby system zrobił. Na przykład ls (pokaż listę plików).
  • Opcje (albo flagi): zmieniają zachowanie polecenia. Na przykład -l (szczegółowa lista dla ls).
  • Argumenty: dodatkowe dane, które przekazujesz poleceniu, np. ścieżka do pliku lub folderu.

Przykład:

ls -l /home

Tutaj:

  • ls — polecenie;
  • -l — opcja do wyświetlenia szczegółowej listy;
  • /home — argument (folder, którego zawartość chcemy zobaczyć).

3. Nawigacja i podstawowe polecenia CLI

Zaczniemy od najprostszych poleceń, które pokazują, jak działać z systemem.

1. Kim jestem? Gdzie jestem?

  • whoami: pokazuje aktualnego użytkownika.

    $ whoami
    student
    
  • pwd (print working directory): pokazuje aktualny katalog.

    $ pwd
    /home/student
    
Ważne!

W większości powłok Unix/Linux znak $ jest używany jako prompt w terminalu. Oznacza, że system jest gotowy na polecenie. Znak $ oddziela polecenia, które użytkownik ma wpisać, od ich wyniku.

2. Rozejrzyjmy się

  • ls (list): pokazuje zawartość aktualnego katalogu.

      $ ls
      Documents  Downloads  Music
    

    Przydatne opcje:

    • -l: szczegółowe info o plikach i folderach.
    • -a: pokazuje ukryte pliki.

Przykład:

ls -la

3. Przemieszczanie się po folderach

  • cd (change directory): pozwala przechodzić między katalogami.
    $ cd /home
    $ pwd
    /home
    

4. Skróty klawiszowe terminala

Command line daje sporo wygodnych skrótów klawiszowych:

  • Ctrl+C: przerywa aktualne polecenie.
  • Ctrl+D: kończy aktualną sesję.
  • Tab: autouzupełnianie pliku lub folderu. Mega przydatne — używaj często.
  • Arrow Up/Down: przewijanie ostatnich poleceń.

Tip praktyczny: jeśli chcesz poczuć się jak haker, to naciśnij Ctrl+C i zerknij w bok — styl idealny.


5. Przykłady prostych poleceń: zaczynamy działać!

Zróbmy proste zadanie praktyczne i rozwiążmy je przez CLI.

Zadanie:

  1. Sprawdź aktualnego użytkownika.
  2. Przejdź do katalogu domowego.
  3. Zobacz, co tam jest.
  4. Stwórz folder test_folder.
  5. Sprawdź, czy folder się pojawił.

Rozwiązanie:


# Sprawdzamy aktualnego użytkownika
whoami

# Przechodzimy do katalogu domowego
cd ~

# Sprawdzamy zawartość katalogu
ls

# Tworzymy folder
mkdir test_folder

# Sprawdzamy, czy jest
ls -l

Wyjaśnienie kroków:

  1. Poleceniem whoami sprawdziliśmy, na jakim użytkowniku działamy.
  2. Za pomocą cd ~ przeszliśmy do katalogu domowego. Znak ~ zawsze wskazuje na domowy folder aktualnego użytkownika.
  3. Polecenie ls pokazało zawartość katalogu przed i po utworzeniu folderu.

6. Typowe błędy i jak ich unikać

Praca z command line zawsze wiąże się z błędami, szczególnie na początku. Oto kilka typowych sytuacji:

  • Spacje w nazwach plików/folderów. Jeśli masz nazwy ze spacją, zawsze dawaj je w cudzysłowie. Przykład:

    mkdir "My Folder"
    
  • Złe ścieżki. Jeśli widzisz komunikat No such file or directory, to znaczy, że podałeś ścieżkę, która nie istnieje.

    cd /unknown/path
    
  • Literówki w poleceniach. Terminal nie wybacza błędów: lss zamiast ls — to już inne polecenie (albo wcale go nie ma).


7. Po co to wszystko?

CLI to potężne narzędzie do zarządzania każdym systemem. Używa się go wszędzie: od konfiguracji serwerów po pisanie automatycznych skryptów. Na rozmowach rekrutacyjnych często pytają o polecenia do zrobienia czegoś przez terminal, więc wiedza, którą teraz zdobywasz, na pewno się przyda.

Dodatkowo CLI pomoże Ci ogarnąć systemy kontroli wersji, jak git, tworzyć aplikacje serwerowe i pisać skrypty do automatyzacji. Wszystko zaczyna się od takich podstaw, jak struktura poleceń, przechodzenie między folderami i podstawowe skróty klawiszowe.

Trochę praktyki

Spróbuj zrobić takie zadanie:

  1. Sprawdź aktualną datę.
  2. Stwórz folder logs.
  3. W środku stwórz plik log.txt z wpisem o aktualnej dacie.
Przykład rozwiązania

# Sprawdzamy aktualną datę
date

# Tworzymy folder logs
mkdir logs

# Zapisujemy datę do pliku log.txt
date > logs/log.txt

# Sprawdzamy zawartość pliku
cat logs/log.txt

Teraz jesteś gotowy na kolejny poziom — pracę z systemem plików i jego zawartością!

8. Co to jest plugin CodeGym i po co go używać?

Zadania możesz rozwiązywać na stronie i w IDE JetBrains z zainstalowanym pluginem CodeGym i Shell Script (zwykle Shell Script już jest).

Jeśli nie masz IDE, polecamy zainstalować IntelliJ IDEA Community Edition.

  1. Instrukcja, jak zainstalować IntelliJ IDEA.
  2. Jak stworzyć pierwszy projekt.

Pobierz plugin CodeGym z marketplace Jetbrains, prosto w swoim IDE.

  1. Wejdź w "Ustawienia", Windows/Linux File - Settings, MacOS IntelliJ IDEA - Preferences. Jeśli nie widzisz ustawień, otwórz dowolny projekt albo stwórz nowy.

  2. W oknie po lewej wybierz Plugins i otwórz zakładkę Marketplace. Wpisz w wyszukiwarce codegym

  3. Wybierz plugin i kliknij Install.
  4. Zrestartuj (Restart IDE) IntelliJ IDEA, żeby zacząć działać z pluginem.
  5. Zobaczysz lekko zmieniony interfejs i przycisk Zaloguj się na górnym pasku.
  6. Po kliknięciu otworzy się okno logowania do Twojego konta, gdzie trzeba wpisać swój sekretny klucz. Przypominamy, że sekretny klucz znajdziesz w sekcji “Ustawienia” → “Bezpieczeństwo i logowanie”.

  7. Żeby otworzyć nowe zadanie, kliknij Tasks w lewym panelu, potem kartę zadania po lewej i w oknie kliknij Otwórz:

  8. Otworzy się okno z dwoma zakładkami. Jedna — z treścią zadania, druga — do wpisania kodu. I komunikat od shellcheck do sprawdzania Twoich shell-skryptów — zgadzamy się
  9. Teraz wpisz rozwiązanie i kliknij Validate, żeby wysłać zadanie do sprawdzenia albo uruchom lokalnie.

Plugin zainstalowany! Teraz możesz rozwiązywać zadania.

Synchronizacja zadań strona — plugin

Lista zadań i ich statusy aktualizują się automatycznie, co pięć minut albo po wysłaniu dowolnego zadania do sprawdzenia (serwer CodeGym).

Więc jeśli rozwiążesz zadanie na stronie, w pluginie też będzie na liście rozwiązanych. Jeśli chcesz odświeżyć statusy od razu, kliknij swój avatar (w prawym górnym rogu) i w menu wybierz Synchronizuj zadania:

Tryb początkującego w pluginie

To uproszczona wersja dla tych, którzy nie mają (albo mają mało) doświadczenia z IntelliJ IDEA i innymi IDE. Ukryte są niektóre funkcje IntelliJ IDEA. Żeby wyłączyć ten tryb, kliknij swój avatar (w prawym górnym rogu) i w menu wybierz Ustawienia:

Jak ukryć panel nawigacyjny pluginu w trybie PRO

Kliknij Ustawienia (⚙️) i odznacz opcję "Pokaż panel nawigacyjny pluginu":

Komentarze
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION