Facebook - konwersja
  • promocja

Linux. Wiersz poleceń i skrypty powłoki. Biblia - ebook

Wydawnictwo:
Tłumacz:
Data wydania:
16 maja 2023
Format ebooka:
EPUB
Format EPUB
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najpopularniejszych formatów e-booków na świecie. Niezwykle wygodny i przyjazny czytelnikom - w przeciwieństwie do formatu PDF umożliwia skalowanie czcionki, dzięki czemu możliwe jest dopasowanie jej wielkości do kroju i rozmiarów ekranu. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
, MOBI
Format MOBI
czytaj
na czytniku
czytaj
na tablecie
czytaj
na smartfonie
Jeden z najczęściej wybieranych formatów wśród czytelników e-booków. Możesz go odczytać na czytniku Kindle oraz na smartfonach i tabletach po zainstalowaniu specjalnej aplikacji. Więcej informacji znajdziesz w dziale Pomoc.
Multiformat
E-booki w Virtualo.pl dostępne są w opcji multiformatu. Oznacza to, że po dokonaniu zakupu, e-book pojawi się na Twoim koncie we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu.
(2w1)
Multiformat
E-booki sprzedawane w księgarni Virtualo.pl dostępne są w opcji multiformatu - kupujesz treść, nie format. Po dodaniu e-booka do koszyka i dokonaniu płatności, e-book pojawi się na Twoim koncie w Mojej Bibliotece we wszystkich formatach dostępnych aktualnie dla danego tytułu. Informacja o dostępności poszczególnych formatów znajduje się na karcie produktu przy okładce. Uwaga: audiobooki nie są objęte opcją multiformatu.
czytaj
na tablecie
Aby odczytywać e-booki na swoim tablecie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. Bluefire dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na czytniku
Czytanie na e-czytniku z ekranem e-ink jest bardzo wygodne i nie męczy wzroku. Pliki przystosowane do odczytywania na czytnikach to przede wszystkim EPUB (ten format możesz odczytać m.in. na czytnikach PocketBook) i MOBI (ten fromat możesz odczytać m.in. na czytnikach Kindle).
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.
czytaj
na smartfonie
Aby odczytywać e-booki na swoim smartfonie musisz zainstalować specjalną aplikację. W zależności od formatu e-booka oraz systemu operacyjnego, który jest zainstalowany na Twoim urządzeniu może to być np. iBooks dla EPUBa lub aplikacja Kindle dla formatu MOBI.
Informacje na temat zabezpieczenia e-booka znajdziesz na karcie produktu w "Szczegółach na temat e-booka". Więcej informacji znajdziesz w dziale Pomoc.

Linux. Wiersz poleceń i skrypty powłoki. Biblia - ebook

Odkąd systemy linuksowe mają atrakcyjne interfejsy graficzne, wielu administratorów wykonuje swoje zadania za pomocą myszy. Wiersz poleceń jest o wiele trudniejszym interfejsem, ten sposób pracy jednak pozwala na wykorzystanie pełnego potencjału Linuksa i uzyskanie dostępu do funkcji, które w inny sposób byłyby nieosiągalne. Umiejętność pisania skryptów wiersza poleceń i powłoki Linuksa wciąż jest niezwykle ważna dla każdego administratora, któremu zależy na efektywnym działaniu systemu.

Ta książka, podobnie jak inne z serii "Biblia", zawiera zarówno niezbędne teoretyczne informacje, jak i mnóstwo praktycznych wskazówek i instrukcji, dzięki czemu jest znakomitą pomocą w nauce pisania skryptów dla Linuksa. Pokazano tu, kiedy efektywniej jest używać interfejsu graficznego, a kiedy lepiej sięgnąć do wiersza poleceń. Opisano elementy systemu Linux i przedstawiono podstawowe informacje o powłoce, a także o pracy w wierszu poleceń. Zaprezentowano techniki przetwarzania danych użytkownika w skryptach, pracę z systemami plików, wreszcie - sposoby instalacji i aktualizacji oprogramowania. Sporo miejsca poświęcono pracy z wyrażeniami regularnymi i zaawansowanym metodom manipulacji danymi, pokazano też, jak zmodyfikować skrypty powłoki, aby działały w innych powłokach Linuksa.

Najciekawsze zagadnienia:

  • tworzenie praktycznych skryptów i narzędzi skryptowych i zarządzanie nimi
  • alternatywne powłoki, takie jak dash i zsh
  • edytory gawk i sed
  • podstawowe i rozszerzone wyrażenia regularne
  • tworzenie skryptów powłoki dla pulpitów graficznych w środowiskach KDE i GNOME
  • pisanie podstawowych i zaawansowanych funkcji

Wiersz poleceń: oto pełny potencjał Linuksa!

Spis treści

O autorach

O redaktorze merytorycznym

Podziękowania

Wprowadzenie

Część I. Wiersz poleceń Linuksa

  • Rozdział 1. Powłoki Linuksa - podstawy
    • Poznawanie Linuksa
      • Jądro Linuksa
      • Narzędzia GNU
      • Środowisko pulpitu Linuksa
    • Zapoznanie z dystrybucjami Linuksa
      • Podstawowe dystrybucje Linuksa
    • Podsumowanie
  • Rozdział 2. Uzyskiwanie dostępu do powłoki
    • Dostęp do wiersza poleceń
      • Konsole
      • Terminale graficzne
    • Dostęp do CLI przez konsolę Linuksa
    • Dostęp do CLI przez graficzny emulator terminala
    • Emulator terminala Gnome
      • Uzyskiwanie dostępu do terminala GNOME
      • Pasek menu
    • Emulator terminala Konsole
      • Dostęp do Konsole
      • Pasek menu
    • Emulator terminala xterm
      • Uzyskiwanie dostępu do xterm
      • Parametry wiersza poleceń
    • Podsumowanie
  • Rozdział 3. Podstawowe polecenia powłoki Bash
    • Uruchamianie powłoki
    • Praca z wierszem poleceń powłoki
    • Posługiwanie się podręcznikiem Bash
    • Przeglądanie systemu plików
      • System plików Linuksa
      • Poruszanie się po katalogach
    • Wyświetlanie list plików i katalogów
      • Wyświetlanie podstawowej listy
      • Długi format listy
      • Filtrowanie listy wyników
    • Obsługa plików
      • Tworzenie plików
      • Kopiowanie plików
      • Uzupełnianie poleceń
      • Dowiązania do plików
      • Zmienianie nazw plików
      • Usuwanie plików
    • Zarządzanie katalogami
      • Tworzenie katalogów
      • Usuwanie katalogów
    • Przeglądanie zawartości plików
      • Sprawdzanie typu pliku
      • Wyświetlanie całego pliku
      • Wyświetlanie części pliku
    • Podsumowanie
  • Rozdział 4. Więcej poleceń powłoki Bash
    • Monitorowanie programów
      • Podglądanie procesów
      • Monitorowanie procesów w czasie rzeczywistym
      • Zatrzymywanie procesów
    • Monitorowanie przestrzeni dyskowej
      • Montowanie mediów
      • Polecenie df
      • Polecenie du
    • Praca z plikami danych
      • Przechowywanie danych
      • Wyszukiwanie danych
      • Kompresja danych
      • Archiwizacja danych
    • Podsumowanie
  • Rozdział 5. Rozszerzenie wiadomości o powłoce
    • Typy powłoki
    • Relacja rodzic-dziecko między powłokami
      • Wyświetlanie listy procesów
      • Pomysłowe wykorzystanie podpowłok
    • Polecenia zewnętrzne i wbudowane
      • Polecenia zewnętrzne
      • Polecenia wbudowane
    • Podsumowanie
  • Rozdział 6. Zmienne środowiskowe w systemie Linux
    • Zmienne środowiskowe - informacje ogólne
      • Globalne zmienne środowiskowe
      • Lokalne zmienne środowiskowe
    • Zmienne zdefiniowane przez użytkownika
      • Ustawianie lokalnych zmiennych zdefiniowanych przez użytkownika
      • Ustawianie globalnych zmiennych środowiskowych
    • Usuwanie zmiennych środowiskowych
    • Sprawdzanie domyślnych zmiennych środowiskowych powłoki
    • Ustawianie zmiennej środowiskowej PATH
    • Lokalizacja systemowych zmiennych środowiskowych
      • Proces logowania do powłoki
      • Proces powłoki interaktywnej
      • Proces powłoki nieinteraktywnej
      • Ustawianie zmiennych środowiskowych na stałe
    • Zmienne tablicowe
    • Podsumowanie
  • Rozdział 7. Uprawnienia do plików w systemie Linux
    • Zabezpieczenia Linuksa
      • Plik /etc/passwd
      • Plik /etc/shadow
      • Dodawanie użytkownika
      • Usuwanie użytkownika
      • Modyfikowanie konta użytkownika
    • Grupy w Linuksie
      • Plik /etc/group
      • Tworzenie nowych grup
      • Modyfikowanie grup
    • Dekodowanie uprawnień do plików
      • Symbole uprawnień do plików
      • Domyślne uprawnienia do plików
    • Zmiana ustawień zabezpieczeń
      • Zmiana uprawnień
      • Zmiana właściciela
    • Wspólne pliki
    • Listy kontroli dostępu
    • Podsumowanie
  • Rozdział 8. Zarządzanie systemami plików
    • Systemy plików Linuksa
      • Ewolucja systemu plików Linuksa
      • Systemy plików z księgowaniem
      • Systemy plików z zarządzaniem woluminami
    • Praca z systemami plików
      • Tworzenie partycji
      • Polecenie gdisk
      • Polecenie GNU parted
      • Tworzenie systemu plików
      • Sprawdzanie i naprawianie systemu plików
    • Woluminy logiczne
      • Struktura LVM
      • LVM w Linuksie
      • Używanie LVM w Linuksie
    • Podsumowanie
  • Rozdział 9. Instalacja oprogramowania
    • Zarządzanie pakietami
    • Systemy oparte na Debianie
      • Zarządzanie pakietami za pomocą polecenia apt
      • Instalowanie pakietów oprogramowania za pomocą polecenia apt
      • Aktualizacja oprogramowania za pomocą polecenia apt
      • Dezinstalacja oprogramowania za pomocą polecenia apt
      • Repozytoria apt
    • Systemy oparte na Red Hat
      • Wyświetlanie listy zainstalowanych pakietów
      • Instalowanie oprogramowania za pomocą polecenia dnf
      • Aktualizacja oprogramowania za pomocą polecenia dnf
      • Dezinstalacja oprogramowania za pomocą polecenia dnf
      • Uszkodzone zależności
      • Repozytoria RPM
    • Zarządzanie oprogramowaniem za pomocą kontenerów
      • Kontenery snap
      • Kontenery flatpak
    • Instalacja z kodu źródłowego
    • Podsumowanie
  • Rozdział 10. Praca z edytorami
    • Praca z edytorem vim
      • Sprawdzanie pakietu vim
      • Podstawy edytora vim
      • Edytowanie danych
      • Kopiowanie i wklejanie
      • Wyszukiwanie i zastępowanie
    • Edytor nano
    • Edytor Emacs
      • Sprawdzanie pakietu Emacs
      • Edytor Emacs w trybie konsolowym
      • Edytor Emacs z graficznym interfejsem użytkownika
    • Rodzina edytorów KDE
      • Edytor KWrite
      • Edytor Kate
    • Edytor GNOME
      • Uruchamianie gedit
      • Podstawowe funkcje edytora gedit
      • Zarządzanie wtyczkami
    • Podsumowanie

Część II. Podstawy skryptów powłoki

  • Rozdział 11. Podstawy budowy skryptów
    • Używanie kilku poleceń na raz
    • Tworzenie pliku skryptu
    • Wyświetlanie komunikatów
    • Zmienne
      • Zmienne środowiskowe
      • Zmienne użytkownika
      • Podmienianie poleceń
    • Przekierowywanie wejścia i wyjścia
      • Przekierowywanie wyjścia
      • Przekierowywanie wejścia
    • Potoki
    • Wykonywanie działań matematycznych
      • Polecenie expr
      • Nawiasy
      • Rozwiązanie zmiennoprzecinkowe
    • Wychodzenie ze skryptu
      • Sprawdzanie stanu wyjścia
      • Polecenie exit
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 12. Polecenia strukturalne
    • Instrukcja if-then
    • Instrukcja if-then-else
    • Zagnieżdżanie instrukcji if
    • Polecenie test
      • Porównywanie liczb
      • Porównywanie łańcuchów
      • Porównywanie plików
    • Testy złożone
    • Zaawansowane właściwości instrukcji if-then
      • Pojedyncze nawiasy
      • Podwójne nawiasy
      • Podwójne nawiasy prostokątne
    • Polecenie case
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 13. Więcej poleceń strukturalnych
    • Polecenie for
      • Wczytywanie listy wartości
      • Wczytywanie złożonych list wartości
      • Wczytywanie listy ze zmiennej
      • Wczytywanie wartości z polecenia
      • Zmiana separatora pól
      • Wczytywanie katalogu za pomocą symboli wieloznacznych
    • Polecenie for w stylu języka C
      • Polecenie for z języka C
      • Używanie więcej niż jednej zmiennej
    • Polecenie while
      • Podstawowy format polecenia while
      • Używanie kilku poleceń testowych
    • Polecenie until
    • Zagnieżdżanie pętli
    • Przeglądanie za pomocą pętli danych w plikach
    • Kontrolowanie pętli
      • Polecenie break
      • Polecenie continue
    • Przetwarzanie wyników pętli
    • Kilka praktycznych przykładów
      • Wyszukiwanie plików wykonywalnych
      • Tworzenie wielu kont użytkownika
    • Podsumowanie
  • Rozdział 14. Przyjmowanie danych od użytkownika
    • Przekazywanie parametrów
      • Wczytywanie parametrów
      • Wczytywanie nazwy skryptu
      • Testowanie parametrów
    • Specjalne zmienne parametryczne
      • Liczenie parametrów
      • Pobieranie wszystkich danych
    • Przesuwanie parametrów
    • Opcje
      • Wyszukiwanie opcji
      • Polecenie getopt
      • Polecenie getopts
    • Standaryzacja opcji
    • Odbieranie danych od użytkownika
      • Podstawy wczytywania
      • Kontrola czasu
      • Wczytywanie bez wyświetlania
      • Wczytywanie danych z pliku
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 15. Prezentowanie danych
    • Wejście i wyjście
      • Standardowe deskryptory plików
      • Przekierowywanie błędów
    • Przekierowywanie wyjścia w skryptach
      • Przekierowania tymczasowe
      • Trwałe przekierowania
    • Przekierowywanie wejścia w skryptach
    • Tworzenie własnych przekierowań
      • Tworzenie wyjściowych deskryptorów plików
      • Przekierowywanie deskryptorów plików
      • Tworzenie wejściowych deskryptorów plików
      • Tworzenie deskryptora odczytu/zapisu plików
      • Zamykanie deskryptorów plików
    • Wyświetlanie listy otwartych deskryptorów plików
    • Tłumienie wyników poleceń
    • Pliki tymczasowe
      • Tworzenie lokalnego pliku tymczasowego
      • Tworzenie tymczasowego pliku w katalogu
      • Tworzenie tymczasowego katalogu
    • Zapisywanie komunikatów w dzienniku
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 16. Kontrola w skryptach
    • Obsługa sygnałów
      • Wysyłanie sygnałów do powłoki Bash
      • Generowanie sygnałów
      • Przechwytywanie sygnałów
      • Przechwytywanie sygnału wyjścia w skrypcie
      • Modyfikowanie lub usuwanie pułapki
    • Wykonywanie skryptów w tle
      • Wykonywanie w tle
      • Wykonywanie wielu zadań w tle
    • Wykonywanie skryptów bez rozłączania
    • Kontrolowanie zadań
      • Wyświetlanie zadań
      • Ponowne uruchamianie zatrzymanych zadań
    • Czy warto być uprzejmym
      • Polecenie nice
      • Polecenie renice
    • Wykonywanie według zegara
      • Planowanie wykonywania zadań za pomocą polecenia at
      • Regularne wykonywanie skryptów
      • Uruchamianie skryptów z nową powłoką
    • Praktyczny przykład
    • Podsumowanie

Część III. Zaawansowane techniki skryptowe

  • Rozdział 17. Tworzenie funkcji
    • Podstawy funkcji skryptowych
      • Tworzenie funkcji
      • Używanie funkcji
    • Zwracanie wartości przez funkcję
      • Domyślny stan wyjścia
      • Polecenie return
      • Przechwytywanie wyjścia funkcji
    • Używanie zmiennych w funkcjach
      • Przekazywanie parametrów do funkcji
      • Zakres dostępności zmiennych w funkcji
    • Zmienne tablicowe i funkcje
      • Przekazywanie tablic do funkcji
      • Zwracanie tablic przez funkcje
    • Funkcje rekurencyjne
    • Tworzenie biblioteki
    • Używanie funkcji w wierszu poleceń
      • Tworzenie funkcji w wierszu poleceń
      • Definiowanie funkcji w pliku .bashrc
    • Praktyczny przykład
      • Pobieranie i instalacja
      • Budowa biblioteki
      • Funkcje biblioteki shtool
      • Używanie biblioteki
    • Podsumowanie
  • Rozdział 18. Pisanie skryptów dla pulpitów graficznych
    • Tworzenie menu tekstowych
      • Tworzenie struktury menu
      • Tworzenie funkcji menu
      • Dodawanie logiki menu
      • Łączenie wszystkiego razem
      • Polecenie select
    • Tworzenie okien
      • Pakiet dialog
      • Opcje polecenia dialog
      • Polecenie dialog w skryptach
    • Interfejs graficzny
      • Środowisko KDE
      • Środowisko GNOME
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 19. Wprowadzenie do edytorów sed i gawk
    • Praca z tekstem
      • Edytor sed
      • Podstawy programu gawk
    • Podstawowe polecenia edytora sed
      • Więcej opcji zastępowania
      • Używanie adresów
      • Usuwanie wierszy
      • Wstawianie i dołączanie tekstu
      • Zmienianie wierszy
      • Zamienianie znaków
      • Jeszcze parę słów o drukowaniu
      • Praca z plikami w edytorze sed
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 20. Wyrażenia regularne
    • Podstawy wyrażeń regularnych
      • Definicja
      • Typy wyrażeń regularnych
    • Definiowanie wzorców BRE
      • Zwykły tekst
      • Znaki specjalne
      • Znaki zakotwiczenia
      • Kropka
      • Klasy znaków
      • Negacja klas znaków
      • Zakresy
      • Specjalne klasy znaków
      • Gwiazdka
    • Rozszerzone wyrażenia regularne
      • Znak zapytania
      • Znak plusa
      • Klamry
      • Symbol potoku
      • Grupowanie wyrażeń
    • Praktyczny przykład
      • Liczenie plików w katalogach
      • Sprawdzanie poprawności numeru telefonu
      • Sprawdzanie adresów e-mail
    • Podsumowanie
  • Rozdział 21. Zaawansowane funkcje edytora sed
    • Polecenia wielowierszowe
      • Polecenie n
      • Wielowierszowe polecenie usuwania
      • Wielowierszowe polecenie drukowania
    • Schowek tymczasowy
    • Negacja poleceń
    • Zmiana przepływu sterowania
      • Rozgałęzianie
      • Testowanie
    • Wymiana przez wzorzec
      • Znak &
      • Zamiana pojedynczych słów
    • Polecenia edytora sed w skryptach
      • Opakowania
      • Przekierowywanie wyników edytora sed
    • Tworzenie narzędzi edytora sed
      • Dodawanie wierszy odstępu
      • Dodawanie pustych wierszy, gdy trochę już ich jest
      • Numerowanie wierszy w pliku
      • Drukowanie ostatnich wierszy
      • Usuwanie wierszy
      • Usuwanie znaczników HTML-a
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 22. Zaawansowane funkcje edytora gawk
    • Zmienne
      • Zmienne wbudowane
      • Zmienne zdefiniowane przez użytkownika
    • Tablice
      • Definiowanie zmiennych tablicowych
      • Iteracja przez zmienne tablicowe
      • Usuwanie zmiennych tablicowych
    • Wzorce
      • Wyrażenia regularne
      • Operator dopasowywania
      • Wyrażenia matematyczne
    • Polecenia strukturalne
      • Instrukcja if
      • Instrukcja while
      • Instrukcja do-while
      • Instrukcja for
    • Formaty drukowania
    • Funkcje wbudowane
      • Funkcje matematyczne
      • Funkcje łańcuchowe
      • Funkcje czasu
    • Funkcje zdefiniowane przez użytkownika
      • Definiowanie funkcji
      • Używanie własnych funkcji
      • Tworzenie biblioteki funkcji
    • Praktyczny przykład
    • Podsumowanie
  • Rozdział 23. Praca z alternatywnymi powłokami
    • Powłoka Dash
    • Funkcjonalność powłoki Dash
      • Parametry wiersza poleceń powłoki Dash
      • Zmienne środowiskowe powłoki Dash
      • Wbudowane polecenia powłoki Dash
    • Skrypty powłoki Dash
      • Tworzenie skryptów powłoki Dash
      • Co nie będzie działać
    • Powłoka zsh
    • Budowa powłoki zsh
      • Opcje powłoki
      • Polecenia wbudowane
    • Pisanie skryptów powłoki zsh
      • Działania matematyczne
      • Polecenia strukturalne
      • Funkcje
    • Praktyczny przykład
    • Podsumowanie

Część IV. Tworzenie praktycznych skryptów i zarządzanie nimi

  • Rozdział 24. Pisanie prostych narzędzi skryptowych
    • Wykonywanie kopii zapasowych
      • Codzienne wykonywanie kopii zapasowej plików
      • Tworzenie skryptu archiwizacji godzinnej
    • Usuwanie kont
      • Potrzebne funkcje
      • Tworzenie skryptu
      • Uruchamianie skryptu
    • Monitorowanie systemu
      • Domyślne funkcje audytu powłoki
      • Funkcje monitorowania uprawnień
      • Tworzenie skryptu
      • Uruchamianie skryptu
    • Podsumowanie
  • Rozdział 25. Organizacja skryptów
    • Kontrola wersji
      • Katalog roboczy
      • Poczekalnie
      • Repozytorium lokalne
      • Repozytorium zdalne
      • Rozgałęzianie
      • Klonowanie
      • Git jako system kontroli wersji
    • Konfiguracja środowiska Git
    • Zatwierdzanie w Git
    • Podsumowanie

Dodatki

  • Dodatek A. Przewodnik po poleceniach powłoki Bash
  • Dodatek B. Skrócony przewodnik po edytorach sed i gawk
  • Skorowidz
Kategoria: Systemy operacyjne
Zabezpieczenie: Watermark
Watermark
Watermarkowanie polega na znakowaniu plików wewnątrz treści, dzięki czemu możliwe jest rozpoznanie unikatowej licencji transakcyjnej Użytkownika. E-książki zabezpieczone watermarkiem można odczytywać na wszystkich urządzeniach odtwarzających wybrany format (czytniki, tablety, smartfony). Nie ma również ograniczeń liczby licencji oraz istnieje możliwość swobodnego przenoszenia plików między urządzeniami. Pliki z watermarkiem są kompatybilne z popularnymi programami do odczytywania ebooków, jak np. Calibre oraz aplikacjami na urządzenia mobilne na takie platformy jak iOS oraz Android.
ISBN: 978-83-8322-075-8
Rozmiar pliku: 9,4 MB

BESTSELLERY

Kategorie: