Bash i terminal – co to jest, podstawowe komendy Linux i jak zacząć

Bash (Bourne Again Shell) to interpreter poleceń w terminalu Linux i macOS – wpisujesz komendy tekstowe, a system je wykonuje: zarządzanie plikami, instalacja oprogramowania, konfiguracja serwera, automatyzacja zadań. Terminal (konsola) to okno, w którym piszesz te komendy. Każdy administrator VPS i serwera pracuje w terminalu Bash – loguje się przez SSH i zarządza serwerem komendami. Na macOS: terminal jest wbudowany (domyślnie zsh, kompatybilny z bash). Na Windows: Git Bash, WSL (Windows Subsystem for Linux) lub PowerShell.

Nawigacja w systemie plików

Komenda Co robi Przykład
pwd Pokaż bieżący katalog pwd → /home/user
ls Lista plików ls -la (wszystkie + szczegóły)
cd Zmień katalog cd /var/www
cd .. Katalog wyżej cd ..
cd ~ Katalog domowy cd ~ → /home/user
mkdir Utwórz katalog mkdir projekty
rmdir Usuń pusty katalog rmdir stary

Operacje na plikach

Komenda Co robi Przykład
cat Wyświetl zawartość pliku cat config.php
less Przeglądaj duży plik (scroll) less /var/log/nginx/error.log
head Pierwsze 10 linii head -20 plik.txt
tail Ostatnie 10 linii tail -f access.log (live follow)
cp Kopiuj plik/katalog cp plik.txt kopia.txt
mv Przenieś / zmień nazwę mv stary.txt nowy.txt
rm Usuń plik rm plik.txt
rm -rf Usuń katalog z zawartością rm -rf stary_projekt/ (ostrożnie!)
find Znajdź pliki find /var -name "*.log" -size +100M
grep Szukaj tekstu w plikach grep "error" /var/log/syslog

Zarządzanie serwerem

Komenda Co robi
sudo apt update && sudo apt upgrade Aktualizuj system (Ubuntu/Debian)
sudo apt install nginx Zainstaluj pakiet
sudo systemctl status nginx Sprawdź status usługi
sudo systemctl restart nginx Restartuj usługę
htop Monitor procesów (CPU, RAM) – interaktywny
df -h Wolne miejsce na dyskach
free -h Zużycie RAM
du -sh /var/www/* Rozmiar katalogów
uptime Czas działania serwera, load average
whoami Jako kto jesteś zalogowany

Operatory i pipe

Pipe | – przekaż wynik jednej komendy jako wejście drugiej: cat access.log | grep "404" | wc -l (policz ile razy wystąpił błąd 404 w logu).

Przekierowanie > i >> – zapisz wynik do pliku: ls -la > lista.txt (nadpisz), echo "nowa linia" >> plik.txt (dopisz).

&& – uruchom drugą komendę tylko gdy pierwsza się powiedzie: apt update && apt upgrade -y.

; – uruchom drugą komendę niezależnie od wyniku pierwszej: cd /var/www; ls.

Skrypty Bash – automatyzacja

Bash to też język skryptowy – zapisujesz komendy w pliku .sh i uruchamiasz jak program:

#!/bin/bash
# backup.sh – codzienny backup bazy i plików

DATE=$(date +%Y%m%d)
BACKUP_DIR="/home/user/backups"

# Backup bazy MySQL
mysqldump -u root mojabaza > "$BACKUP_DIR/db-$DATE.sql"

# Backup plików
tar -czf "$BACKUP_DIR/files-$DATE.tar.gz" /var/www/html

# Usuń backupy starsze niż 30 dni
find "$BACKUP_DIR" -name "*.sql" -mtime +30 -delete
find "$BACKUP_DIR" -name "*.tar.gz" -mtime +30 -delete

echo "Backup $DATE – done!"

Uruchomienie: chmod +x backup.sh && ./backup.sh. Automatycznie: dodaj do crontab0 3 * * * /home/user/backup.sh (codziennie o 3:00).

Przydatne skróty terminala

Ctrl+C – przerwij bieżącą komendę. Ctrl+D – wyloguj (EOF). Ctrl+R – szukaj w historii komend (wpisuj fragment → bash znajduje ostatnią pasującą komendę). Tab – autouzupełnianie nazw plików/komend. ���/↓ – przeglądaj historię komend. !! – powtórz ostatnią komendę (sudo !! – powtórz z sudo).

Najczęściej zadawane pytania

Bash vs zsh vs fish – co wybrać?

Bash – domyślny w większości dystrybucji Linux. Standard, skrypty na serwerach prawie zawsze w Bash. zsh – domyślny w macOS. Kompatybilny z Bash + rozszerzenia (Oh My Zsh – motywy, pluginy, lepsze autouzupełnianie). fish – nowoczesny, auto-sugestie, kolorowa składnia – ale: nie jest kompatybilny z Bash (skrypty .sh mogą nie działać). Rekomendacja: na serwerze Bash (standard), na desktopie zsh z Oh My Zsh (wygodniejszy).

Czy muszę znać terminal żeby administrować VPS?

Tak – VPS to Linux bez GUI. Wszystko robisz w terminalu: instalacja pakietów, konfiguracja serwera, zarządzanie plikami, monitoring. Alternatywa: zainstaluj panel webowy (HestiaCP, cPanel) – część zadań zrobisz klikaniem. Ale: terminal i tak jest niezbędny do zaawansowanych operacji.

Jak nauczyć się terminala?

Najlepszy sposób: zainstaluj Linux (na VPS za ~18 zł/mc lub dual boot na laptopie) i zacznij go używać. Każdy problem rozwiązuj w terminalu zamiast Google’ować GUI. Zasoby: linuxcommand.org (darmowy kurs), OverTheWire Bandit (gra edukacyjna – rozwiązujesz zagadki w terminalu), man [komenda] (wbudowana dokumentacja – np. man grep).

Picture of Tomasz Zieliński
Tomasz Zieliński

Tomasz zajmuje się tematyką SEO, sztucznej inteligencji i automatyzacji pracy w marketingu internetowym. W swoich artykułach analizuje zmiany w algorytmach wyszukiwarek, rozwój narzędzi AI oraz nowe sposoby tworzenia i optymalizacji treści. Interesuje go przede wszystkim to, jak technologia wpływa na codzienną pracę specjalistów SEO, marketerów i twórców internetowych.

Facebook
Twitter
LinkedIn
Pinterest

Najnowsze Wpisy

Śledź nas