Ebook details

Linux. Zostań mistrzem skryptów powłoki. Najlepszy przewodnik, z którym zoptymalizujesz, zautomatyzujesz i usprawnisz każde zadanie

Linux. Zostań mistrzem skryptów powłoki. Najlepszy przewodnik, z którym zoptymalizujesz, zautomatyzujesz i usprawnisz każde zadanie

Donald A. Tevault

Loading...
EBOOK

Wiele zadań administracyjnych w Linuksie można wykonać, korzystając z graficznego interfejsu użytkownika. Jednak prawdziwą moc swojego systemu uwolnisz za pomocą skryptów wiersza poleceń i powłoki. W ten sposób możesz efektywnie automatyzować powtarzalne zadania, precyzyjnie skonfigurować system, a także zapewnić wysoki stopień bezpieczeństwa.

Ta praktyczna książka świetnie posłuży początkującym i bardziej zaawansowanym administratorom Linuksa. Będzie też pomocna w przygotowaniu się do egzaminu CompTIA Linux+ / Linux Professional Institute. Rozpoczniesz od podstaw korzystania z powłoki, aby w kolejnych rozdziałach przejść do bardziej zaawansowanych koncepcji. Zobaczysz, jak tworzyć skrypty automatyzujące powtarzalne zadania administracyjne, a także wiele innych przydatnych rozwiązań. W książce znajdziesz również praktyczne, gotowe do użycia skrypty. Zostały one opracowane w taki sposób, by ułatwić zarządzanie systemem, wspomagać naukę omawianych koncepcji i pomagać podczas rozwiązywania problemów. Przede wszystkim skoncentrujesz się na powłoce bash, ale zapoznasz się również z powłoką Zsh i PowerShell.

W książce:

  • koncepcja powłoki i różne rodzaje powłok
  • przekierowanie, potok i polecenia złożone
  • filtry strumieni tekstowych i dynamiczne przetwarzanie danych
  • funkcje, biblioteki i tworzenie modułowych skryptów powłoki
  • struktura przenośnych skryptów powłoki

Poświęć skryptowi minutę, a zaoszczędzisz godziny!

O autorze

O korektorze merytorycznym

Wprowadzenie

Rozdział 1. Rozpoczęcie pracy z powłoką

  • Czym jest powłoka systemowa?
  • Jak znaleźć pomoc dotyczącą poleceń powłoki?
    • Jak korzystać ze stron podręcznika systemowego?
    • Jak korzystać z systemu stron info?
    • Projekt dokumentacji Linuksa
    • Korzystanie z ulubionej wyszukiwarki internetowej
  • Tworzenie skryptów powłoki za pomocą edytora tekstu
    • Edytory tekstowe
    • Edytory tekstu wyposażone w interfejs graficzny
  • Kompilowane i interpretowane języki programowania
  • Uprawnienia administratora i mechanizm sudo
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 2. Interpretowanie poleceń

  • Struktura polecenia
    • Korzystanie z opcji poleceń
    • Korzystanie z argumentów powłoki
  • Jednoczesne wykonywanie wielu poleceń
    • Interaktywne wykonywanie poleceń
    • Korzystanie z sekwencji poleceń
    • Używanie narzędzia find
    • Wykonywanie wielu operacji za pomocą polecenia find
  • Rekurencyjne wykonywanie poleceń
    • Ćwiczenie praktyczne - rekurencyjne wykonywanie poleceń
  • Korzystanie z historii poleceń
  • Znaki sterujące i znaki cytowania
    • Używanie znaków sterujących
    • Używanie znaków cytowania
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 3. Zmienne i potoki

  • Zmienne środowiskowe
  • Zmienne programistyczne
  • Potoki
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 4. Przekierowanie wejścia-wyjścia

  • Wprowadzenie do przekierowania wejścia-wyjścia
  • Standardowy strumień wyjścia
    • Zapobieganie nadpisywaniu pliku
    • Używanie deskryptora pliku
  • Standardowy strumień wejścia
  • Standardowy strumień błędów
  • Polecenie tee
  • Ćwiczenie praktyczne - potoki, przekierowania i wyszukiwanie plików
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 5. Dostosowywanie środowiska do własnych potrzeb

  • Wymagania techniczne
  • Przegląd zmiennych środowiskowych
  • Sesje powłoki
  • Pliki konfiguracyjne powłoki
    • Globalne pliki konfiguracyjne w Fedorze
    • Pliki konfiguracyjne użytkowników w systemie Fedora
    • Globalne pliki konfiguracyjne w systemie Debian
    • Pliki konfiguracyjne użytkowników w systemie Debian
    • Określanie edytora domyślnego w systemie Debian
  • Ustawianie opcji powłoki z poziomu wiersza poleceń
  • Aliasy
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 6. Filtry strumieni tekstowych - część 1

  • Wymagania techniczne
  • Wprowadzenie do filtrów strumieni tekstowych
  • Używanie polecenia cat
  • Używanie polecenia tac
  • Używanie polecenia cut
  • Używanie polecenia paste
  • Używanie polecenia join
  • Używanie polecenia sort
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 7. Filtry strumieni tekstowych - część 2

  • Wymagania techniczne
  • Używanie polecenia expand
  • Używanie polecenia unexpand
  • Używanie polecenia nl
  • Używanie polecenia head
  • Używanie polecenia tail
  • Używanie poleceń head i tail razem
  • Używanie polecenia od
  • Używanie polecenia uniq
  • Używanie polecenia wc
  • Używanie polecenia fmt
  • Używanie polecenia split
  • Używanie polecenia tr
  • Używanie polecenia xargs
  • Używanie polecenia pr
  • Drukowanie z poziomu powłoki
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 8. Podstawowa konstrukcja skryptu powłoki

  • Wymagania techniczne
  • Podstawy konstrukcji skryptów powłoki
    • Ćwiczenie praktyczne - zliczanie zalogowanych użytkowników
  • Wykonywanie testów
    • Używanie słowa kluczowego test
    • Umieszczanie warunku testowego w nawiasie kwadratowym
    • Używanie konstrukcji warunkowej if-then
    • Używanie innych rodzajów testów
  • Podpowłoka
    • Ćwiczenie praktyczne - testowanie warunków
  • Zmienne w skryptach
    • Tworzenie i usuwanie zmiennych
    • Zmienne i poziomy powłoki
    • Rozróżnianie wielkości liter
    • Zmienne tylko do odczytu
  • Tablice
    • Ćwiczenia praktyczne - praca z tablicami
  • Rozwijanie zmiennych
    • Przypisywanie wartości do niezainicjalizowanej zmiennej
    • Przypisywanie wartości do zmiennej zbioru
    • Przypisywanie wartości zmiennej
    • Wyświetlanie komunikatu błędu
    • Używanie przesunięć zmiennych
    • Dopasowanie wzorca
  • Podstawianie poleceń
  • Konstrukcje warunkowe i pętle
    • Konstrukcja warunkowa if-then
    • Konstrukcja do-while
    • Konstrukcja for-in
    • Konstrukcja for
    • Polecenie break
    • Polecenie continue
    • Konstrukcja until
    • Konstrukcja case
    • Używanie parametrów pozycyjnych
  • Kody wyjścia
    • Standardowe kody wyjścia powłoki
    • Kody wyjścia zdefiniowane przez użytkownika
  • Więcej informacji o poleceniu echo
  • Kilka rzeczywistych przykładów omówionych technik
    • Ćwiczenie praktyczne - stosowanie konstrukcji if-then
    • Ćwiczenie praktyczne - analiza dziennika dostępu serwera Apache
    • Ćwiczenie praktyczne - testy beta nowego dysku twardego
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 9. Filtrowanie tekstu za pomocą grep, sed i wyrażeń regularnych

  • Wymagania techniczne
  • Wyrażenia regularne
    • Literały i metaznaki
  • Narzędzie sed
    • Problemy z przenośnością narzędzia sed
    • Zastępowanie tekstu za pomocą narzędzia sed
    • Usuwanie tekstu za pomocą narzędzia sed
    • Dodawanie i wstawianie tekstu za pomocą narzędzia sed
    • Modyfikowanie tekstu za pomocą narzędzia sed
    • Inne przydatne sztuczki z narzędziem sed
    • Używanie plików programu narzędzia sed
    • Złożone skrypty w plikach programów narzędzia sed
    • Używanie narzędzia sed w skryptach powłoki
  • Narzędzie grep
    • Podstawowe wyszukiwanie za pomocą polecenia grep
    • Zaawansowane wyszukiwanie za pomocą narzędzia grep
    • Jeszcze bardziej zaawansowane wyszukiwanie za pomocą narzędzia grep
    • Zaawansowane wyrażenia regularne w narzędziu grep
    • Używanie wyrażeń regularnych ze stałymi ciągami tekstowymi w narzędziu grep
  • Używanie narzędzi wspomagających pracę z wyrażeniami regularnymi
    • RegexBuddy i RegexMagic
    • Regex101
  • Wybrane przykłady ze świata rzeczywistego
    • Jednoczesna modyfikacja wielu plików
    • Analiza dzienników zdarzeń serwera Apache pod kątem ataków typu cross-site scripting
    • Automatyzacja instalacji repozytoriów zewnętrznych
    • Uzupełnianie pustych pól w pliku CSV
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 10. Funkcje

  • Wymagania techniczne
  • Wprowadzenie do funkcji
  • Definiowanie funkcji
  • Używanie funkcji w skryptach powłoki
    • Tworzenie i wywoływanie funkcji
    • Przekazywanie parametrów pozycyjnych do funkcji
    • Przekazywanie wartości z funkcji
  • Tworzenie bibliotek funkcji
  • Rzeczywiste przykłady zastosowania funkcji
    • Sprawdzanie połączenia sieciowego
    • Korzystanie z API CoinGecko
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 11. Wykonywanie operacji matematycznych

  • Wymagania techniczne
  • Wykonywanie obliczeń na liczbach całkowitych za pomocą wyrażeń
    • Używanie polecenia expr
    • Używanie polecenia echo z wyrażeniami matematycznymi
  • Wykonywanie obliczeń na liczbach całkowitych przy użyciu zmiennych
  • Wykonywanie operacji matematycznych na liczbach zmiennoprzecinkowych za pomocą narzędzia bc
    • Używanie programu bc w trybie interaktywnym
    • Używanie plików programu bc
    • Używanie programu bc w skryptach powłoki
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 12. Automatyzacja skryptów za pomocą składni here document i narzędzia expect

  • Wymagania techniczne
  • Używanie składni here document
    • Używanie składni here document w połączeniu z danymi statycznymi
    • Używanie składni here document w połączeniu z danymi dynamicznymi
    • Wykorzystanie funkcji w składni here document
  • Automatyzacja odpowiedzi za pomocą narzędzia expect
    • Kwestie bezpieczeństwa związane z narzędziem expect
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 13. Używanie ImageMagick w skryptach

  • Wymagania techniczne
  • Konwersja niestandardowych rozszerzeń plików
  • Instalacja ImageMagick
    • Wyświetlanie obrazów
    • Przeglądanie właściwości obrazu
  • Zmiana wielkości obrazu i dostosowywanie go do własnych potrzeb
  • Przetwarzanie wsadowe plików graficznych
  • Korzystanie ze skryptów Freda przeznaczonych dla programu ImageMagick
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 14. Używanie języka AWK - część 1

  • Wprowadzenie do języka AWK
  • Omówienie wzorców i działań
  • Pobieranie danych wejściowych z plików tekstowych
    • Wyszukiwanie użytkowników
    • Analiza dzienników dostępu do serwera WWW
    • Używanie wyrażeń regularnych
  • Pobieranie danych wejściowych z poleceń
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 15. Używanie języka AWK - część 2

  • Wymagania techniczne
  • Podstawowa struktura skryptu AWK
  • Używanie konstrukcji warunkowych
  • Używanie pętli while i deklarowanie zmiennych
    • Sumowanie liczb w wierszu
    • Określanie generacji procesora
  • Używanie pętli for i tablic
  • Wykorzystanie arytmetyki zmiennoprzecinkowej i funkcji printf
  • Praca z rekordami wielowierszowymi
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 16. Tworzenie interfejsów użytkownika za pomocą narzędzi yad, dialog i xdialog

  • Wymagania techniczne
  • Tworzenie graficznego interfejsu użytkownika za pomocą narzędzia yad
    • Podstawy pracy z narzędziem yad
    • Tworzenie formularzy do wprowadzania danych
    • Tworzenie rozwijanej listy
    • Używanie menedżera plików narzędzia yad
    • Programowanie przycisków formularza
    • Kilka końcowych przemyśleń na temat narzędzia yad
  • Tworzenie interfejsów użytkownika za pomocą narzędzi dialog i xdialog
    • Podstawy pracy z narzędziem dialog
    • Podstawy pracy z narzędziem xdialog
    • Automatyczny wybór między narzędziami dialog i xdialog
    • Dodawanie widżetów
    • Tworzenie interfejsu logowania poprzez SSH
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 17. Używanie opcji skryptów powłoki za pomocą getopts

  • Wymagania techniczne
  • Wyjaśnienie potrzeby użycia polecenia getopts
  • Porównanie poleceń getopt i getopts
  • Używanie getopts
  • Analiza rzeczywistych przykładów
    • Zmodyfikowana wersja skryptu dla API Coingecko
    • Skrypt monitorujący Tecmint
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 18. Skrypty powłoki dla specjalistów ds. bezpieczeństwa

  • Wymagania techniczne
  • Proste skrypty do przeprowadzania audytu
    • Identyfikacja systemu operacyjnego
    • Prosty skrypt do skanowania portów
    • Kontrola konta użytkownika root
    • Tworzenie skryptu monitorującego aktywność użytkownika
  • Tworzenie prostych skryptów zapory sieciowej
    • Tworzenie skryptu blokującego adresy IP w dystrybucji Red Hat
  • Wyszukiwanie istniejących skryptów związanych z bezpieczeństwem
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 19. Przenośne skrypty powłoki

  • Wymagania techniczne
  • Uruchamianie powłoki bash w systemach innych niż Linux
    • Konfiguracja środowiska powłoki bash za pomocą env
    • Tworzenie dowiązania symbolicznego do powłoki bash
  • Zgodność ze standardem POSIX
  • Różnice między powłokami
  • Specyficzne cechy powłoki bash
    • Korzystanie z testów przenośnych
    • Tworzenie przenośnych tablic
    • Problemy z przenośnością polecenia echo
  • Testowanie skryptów pod kątem zgodności ze standardem POSIX
    • Tworzenie skryptów w powłoce zgodnej z POSIX
    • Używanie narzędzia checkbashisms
    • Używanie narzędzia shellcheck
    • Używanie narzędzia shall
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 20. Bezpieczeństwo skryptów powłoki

  • Wymagania techniczne
  • Zarządzanie dostępem do skryptów
    • Nadawanie uprawnień administratora
    • Używanie listy kontroli dostępu
    • Zaciemnianie skryptów zapisanych w postaci zwykłego tekstu
    • Deszyfrowanie plików binarnych utworzonych za pomocą narzędzia shc
  • Kwestie związane z SUID i SGID
  • Unikanie wycieków danych wrażliwych
    • Zabezpieczanie plików tymczasowych
    • Używanie haseł w skryptach powłoki
  • Wstrzykiwanie poleceń przy użyciu funkcji eval
    • Używanie funkcji eval w wierszu poleceń
    • Bezpieczny sposób używania funkcji eval
    • Niebezpieczny sposób używania funkcji eval
    • Alternatywy dla funkcji eval
  • Kwestie związane z bezpieczeństwem ścieżek dostępu
    • Scenariusz ataku 1. Przejęcie konta użytkownika
    • Scenariusz ataku 2. Inżynieria społeczna
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 21. Debugowanie skryptów powłoki

  • Wymagania techniczne
  • Typowe błędy popełniane w skryptach
    • Za mało znaków cudzysłowu
    • Tworzenie pętli działającej w nieskończoność
  • Korzystanie z technik i narzędzi przeznaczonych do debugowania skryptów powłoki
    • Używanie polecenia echo
    • Wykorzystanie narzędzia xtrace podczas debugowania
    • Sprawdzanie pod kątem niezdefiniowanych zmiennych
    • Sprawdzanie błędów za pomocą opcji -e
    • Korzystanie z debuggera powłoki bash
    • Debugowanie skryptu za pomocą bashdb
    • Uzyskiwanie pomocy w narzędziu bashdb
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 22. Wprowadzenie do skryptów powłoki Z

  • Wymagania techniczne
  • Wprowadzenie do powłoki zsh
  • Instalacja zsh
  • Unikalne cechy skryptów powłoki zsh
    • Różnice w rozwijaniu zmiennych
    • Tablice w zsh
    • Rozszerzone możliwości matematyczne
  • Korzystanie z modułów zsh
    • Używanie modułu mathfunc
    • Moduł datetime
  • Podsumowanie
  • Pytania
  • Lektura uzupełniająca
  • Odpowiedzi

Rozdział 23. Używanie powłoki PowerShell w Linuksie

  • Wymagania techniczne
  • Instalacja powłoki PowerShell w systemach Linux i macOS
    • Instalacja powłoki PowerShell w Linuksie za pomocą pakietu snap
    • Instalacja powłoki PowerShell w Fedorze
    • Instalacja powłoki PowerShell w macOS-ie
    • Uruchamianie powłoki PowerShell
  • Powody, dla których administratorzy systemów Linux i macOS powinni poznać powłokę PowerShell
    • Praca w środowiskach z różnymi systemami operacyjnymi
    • Polecenia powłoki PowerShell mogą być prostsze
    • Rozszerzone wbudowane funkcje matematyczne
  • Różnice między skryptami PowerShell a tradycyjnymi skryptami w systemach Linux oraz Unix
    • Korzystanie z rozszerzeń plików i uprawnień do wykonywania
    • Powłoka PowerShell jest zorientowana obiektowo
    • PowerShell korzysta z poleceń cmdlet
    • Korzystanie z aliasów powłoki PowerShell
  • Przegląd dostępnych poleceń PowerShell
  • Uzyskiwanie pomocy dotyczącej poleceń powłoki PowerShell
  • Przykłady praktyczne skryptów powłoki PowerShell, które działają na różnych platformach
    • Skrypt write-marquee.ps1
    • Skrypt check-cpu.ps1
  • Podsumowanie
  • Lektura uzupełniająca

Skorowidz

  • Title:Linux. Zostań mistrzem skryptów powłoki. Najlepszy przewodnik, z którym zoptymalizujesz, zautomatyzujesz i usprawnisz każde zadanie
  • Author:Donald A. Tevault
  • Original title:The Ultimate Linux Shell Scripting Guide: Automate, Optimize, and Empower tasks with Linux Shell Scripting
  • Translation:Robert Górczyński
  • ISBN:978-83-289-3176-3, 9788328931763
  • Date of issue:2026-02-04
  • Format:Ebook
  • Item ID: lizomi
  • Publisher: Helion
Loading...
Loading...