top of page

Śledź nasze wpisy w social media

  • Instagram
  • Facebook
  • Twitter
  • LinkedIn
  • YouTube
Zdjęcie autoraPiotr Kośka

Przydatne polecania dla każdego - Linux part 1



Polecenie top


top pozwala nam podejrzeć aktualną zajętość systemu poprzez procesy, wykorzystanie pamięci wirtualnej oraz CPU. Możemy sprawdzić takie wartości jak dostępna pamięć RAM, który użytkownik generuje obciążenie maszyny, lub jaki proces zabiera najwięcej zasobów. Doświadczeni użytkownicy lub obeznani wiedzą że polecenie to zwraca więcej informacji z sudo lub na użytkowniku root, musisz pamiętać że, to co widzisz często ogranicza cię z punktu widzenia użytkownika.


Procesy danego użytkownika można podejrzeć przez wariacje polecania z argumentem -u i wartością w postaci nazwy użytkownika.

top -u <user_name>

Kolumny wyświetlają odpowiednio:


  • PID: Pokazuje unikalny identyfikator procesu zadania.

  • PR: Priorytet procesu. Im niższy numer, tym wyższy priorytet.

  • VIRT: Całkowita pamięć wirtualna używana przez zadanie.

  • USER: Nazwa użytkownika właściciela zadania.

  • %CPU: Reprezentuje użycie procesora.

  • TIME+: Czas procesora, taki sam jak „TIME”, ale odzwierciedlający większą szczegółowość do setnych części sekundy.

  • SHR: Reprezentuje rozmiar pamięci współdzielonej (kb) używanej przez zadanie.

  • NI: Reprezentuje wartość nice zadania. Ujemna wartość Nice oznacza wyższy priorytet, a dodatnia wartość Nice oznacza niższy priorytet.

  • %MEM: Pokazuje wykorzystanie pamięci przez zadanie.

  • RES: Ile fizycznej pamięci RAM zużywa proces, mierzone w kilobajtach.

  • COMMAND: Nazwa polecenia, które rozpoczęło proces.

Oczywiście do zgłębiania wszystkich opcji można skorzystać z man top lub top -h




Polecenie ls


Systemy operacyjne Linux są szeroko stosowane zarówno w środowiskach domowych, jak i korporacyjnych. Jednym z najbardziej podstawowych, lecz niezwykle użytecznych poleceń w systemach Linux jest polecenie 'ls', które pozwala na wyświetlanie zawartości katalogów. W tym artykule przyjrzymy się poleceniu 'ls' wraz z opisem poszczególnych atrybutów (przełączników) i przykładami ich zastosowania.



Podstawy polecenia 'ls'


Polecenie 'ls' jest używane do wyświetlania informacji na temat plików i katalogów w bieżącym katalogu. Bez żadnych argumentów, 'ls' wyświetla zawartość bieżącego katalogu, posortowaną alfabetycznie:

$ ls




Przełączniki i atrybuty polecenia 'ls'


Przełączniki (atrybuty) pozwalają na modyfikację zachowania polecenia 'ls'. Oto niektóre z najczęściej używanych:

  • '-a' lub '--all': Wyświetla wszystkie pliki, w tym ukryte pliki (rozpoczynające się od kropki)

$ ls -a

  • '-l': Wyświetla szczegółowe informacje na temat plików, w tym prawa dostępu, ilość dowiązań, właściciela, grupę, rozmiar, datę modyfikacji i nazwę

$ ls -l

  • '-h' lub '--human-readable': Wyświetla rozmiary plików w formacie łatwym do odczytania (KB, MB, GB)

$ ls -lh

  • '-r' lub '--reverse': Odwraca kolejność sortowania

$ ls -lr

  • '-S': Sortuje pliki według rozmiaru

$ ls -lS

  • '-t': Sortuje pliki według czasu modyfikacji

$ ls -lt

  • '-R' lub '--recursive': Wyświetla zawartość katalogów rekurencyjnie

$ ls -R

  • '-d' lub '--directory': Wyświetla informacje na temat samych katalogów, a nie ich zawartości

$ ls -ld

  • '-1': Wyświetla jeden plik na wiersz

$ ls -1


Przykłady użycia polecenia 'ls'


Poniżej znajdują się przykłady łączenia różnych atrybutów polecenia 'ls':

  • Wyświetlanie szczegółowych informacji o plikach w formacie łatwym do odczytania:

$ ls -lh

  • Wyświetlanie wszystkich plików, w tym ukrytych, z posortowanymi według rozmiaru:

$ ls -laS

  • Wyświetlanie plików posortowanych według czasu modyfikacji, z odwróconą kolejnością i w formacie łatwym do odczytania:

$ ls -lhtr

  • Wyświetlanie zawartości katalogów rekurencyjnie, z jednym plikiem na wiersz:

$ ls -R1

  • Wyświetlanie informacji na temat katalogu '/etc', zamiast jego zawartości:

$ ls -ld /etc


Filtrowanie wyników polecenia 'ls'


Można również łączyć polecenie 'ls' z innymi poleceniami, aby filtrować wyniki. Oto kilka przykładów:

  • Wyszukiwanie plików z rozszerzeniem '.txt':

$ ls -l *.txt

  • Wyszukiwanie plików zaczynających się od 'config':

$ ls -l config*

  • Wyświetlanie plików zawierających słowo 'sample', korzystając z polecenia 'grep':

$ ls -l | grep 'sample'


Zmiana kolorów wyjścia polecenia 'ls'


Polecenie 'ls' można skonfigurować, aby wyświetlać wyniki w różnych kolorach, co może pomóc w szybszym zrozumieniu struktury katalogów. Aby to zrobić, można ustawić zmienną środowiskową 'LS_COLORS'. Na przykład:

$ export LS_COLORS="di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:"

Polecenie 'ls' jest jednym z najbardziej podstawowych i użytecznych poleceń w systemach Linux. Pozwala na szybkie przeglądanie zawartości katalogów, a różne atrybuty (przełączniki) umożliwiają precyzyjne dostosowanie wyjścia do potrzeb użytkownika. Dzięki łączeniu polecenia 'ls' z innymi poleceniami, takimi jak 'grep', można filtrować wyniki i wyszukiwać określone pliki.


Omówiliśmy podstawowe funkcje polecenia 'ls', różne atrybuty (przełączniki) dostępne dla tego polecenia, przykłady ich zastosowania, a także sposoby na filtrowanie wyników i dostosowywanie kolorów wyjścia. Znajomość polecenia 'ls' i jego atrybutów jest niezbędna dla każdego użytkownika systemu Linux, zarówno początkujących, jak i zaawansowanych.


Mając na uwadze, że polecenie 'ls' jest powszechnie stosowane w codziennych czynnościach związanych z zarządzaniem plikami i katalogami, warto poświęcić czas na naukę różnych przełączników i technik, które można zastosować, aby uczynić korzystanie z terminala bardziej efektywnym i wydajnym.




Tar: Archiwizacja i kompresja plików w Linuksie


Tar, czyli "tape archive", to popularne narzędzie linuksowe służące do archiwizowania i kompresji plików. Choć początkowo było używane do zapisywania danych na taśmach magnetycznych, dziś stało się niezastąpionym narzędziem dla administratorów systemów, programistów i użytkowników domowych. W tym artykule przyjrzymy się funkcjom polecenia tar oraz różnym przełącznikom, które można zastosować, aby uprościć i przyspieszyć proces archiwizacji i kompresji plików.






Podstawowe użycie polecenia tar


Podstawowe użycie polecenia tar polega na utworzeniu archiwum z wybranych plików lub katalogów. Składnia polecenia jest następująca:

tar [opcje] [nazwa_archiwum.tar] [pliki_do_archiwizacji]


Oto kilka przykładów użycia tar:


  • Archiwizacja pojedynczego pliku:

tar -cvf archiwum.tar plik.txt

W tym przypadku, -c oznacza "create" (utwórz), -v to "verbose" (tryb szczegółowy) oraz -f to "file" (plik). Utworzyliśmy archiwum o nazwie "archiwum.tar" zawierające plik "plik.txt".


  • Archiwizacja wielu plików:

tar -cvf archiwum.tar plik1.txt plik2.txt plik3.txt

Analogicznie, tworzymy archiwum "archiwum.tar", które będzie zawierać pliki "plik1.txt", "plik2.txt" oraz "plik3.txt".


  • Archiwizacja katalogu:

tar -cvf archiwum.tar katalog/

W tym przypadku archiwizujemy cały katalog "katalog/" do pliku "archiwum.tar".



Kompresja plików z użyciem tar


Tar pozwala na kompresję plików w trakcie archiwizacji. Dostępne są dwa popularne formaty kompresji: gzip (z rozszerzeniem .tar.gz) i bzip2 (z rozszerzeniem .tar.bz2). Oto jak skorzystać z tych formatów:


Kompresja gzip:

tar -czvf archiwum.tar.gz katalog/

Dodaliśmy przełącznik -z oznaczający kompresję gzip. Utworzony plik będzie miał rozszerzenie ".tar.gz".


Kompresja bzip2:

tar -cjvf archiwum.tar.bz2 katalog/

W tym przypadku używamy przełącznika -j dla kompresji bzip2. Utworzony plik będzie miał rozszerzenie ".tar.bz2".



Wypakowywanie archiwów tar


Aby wypakować archiwum tar, możemy użyć następujących przełączników:



Wypakowywanie archiwum tar:

tar -xvf archiwum.tar 

Przełącznik -x oznacza "extract" (wypakuj). Wypakujemy zawartość archiwum "archiwum.tar" do bieżącego katalogu.



Wypakowywanie archiwum tar.gz:

tar -xzvf archiwum.tar.gz 

Dodajemy przełącznik -z dla obsługi kompresji gzip. Wypakujemy zawartość archiwum "archiwum.tar.gz" do bieżącego katalogu.



Wypakowywanie archiwum tar.bz2:

tar -xjvf archiwum.tar.bz2

Używamy przełącznika -j dla obsługi kompresji bzip2. Wypakowujemy zawartość archiwum "archiwum.tar.bz2" do bieżącego katalogu.



Wypakowywanie archiwów do określonego katalogu


Jeśli chcemy wypakować archiwum do innego katalogu niż bieżący, możemy użyć przełącznika -C:

tar -xvf archiwum.tar -C /ścieżka/do/katalogu/

Wypakowujemy zawartość archiwum "archiwum.tar" do katalogu "/ścieżka/do/katalogu/". Podobnie, dla archiwów tar.gz i tar.bz2, dodajemy odpowiednio przełączniki -z i -j.



Wyświetlanie zawartości archiwum bez wypakowywania


Aby wyświetlić zawartość archiwum tar bez wypakowywania, używamy przełącznika -t:

tar -tvf archiwum.tar

Dla archiwów tar.gz i tar.bz2, dodajemy odpowiednio przełączniki -z i -j.



Dodawanie plików do istniejącego archiwum


Jeśli chcemy dodać pliki do istniejącego archiwum, używamy przełącznika -r:

tar -rvf archiwum.tar nowy_plik.txt

Należy pamiętać, że opcja -r nie działa z archiwami skompresowanymi (tar.gz i tar.bz2).



Usuwanie plików z archiwum


Aby usunąć pliki z archiwum, możemy skorzystać z narzędzia tar w połączeniu z grep i xargs:

tar -tvf archiwum.tar | grep -v 'plik_do_usunięcia' | tar -czvf nowe_archiwum.tar.gz -T -

Powyższe polecenie utworzy nowe skompresowane archiwum "nowe_archiwum.tar.gz" bez pliku "plik_do_usunięcia".





Polecenie tar jest niezwykle wszechstronnym narzędziem pozwalającym na archiwizację, kompresję oraz zarządzanie plikami i katalogami w systemach Linux. Umożliwia tworzenie archiwów tar, tar.gz i tar.bz2, a także ich wypakowywanie, przeglądanie i modyfikowanie. Omówiliśmy podstawowe opcje polecenia tar, takie jak tworzenie archiwów, kompresowanie plików, wypakowywanie archiwów, wyświetlanie zawartości archiwów, dodawanie i usuwanie plików z archiwów oraz wypakowywanie archiwów do określonego katalogu. Zastosowanie tych opcji pozwala na efektywne zarządzanie plikami i katalogami w codziennej pracy z systemami Linux.


Warto jednak pamiętać, że polecenie tar posiada wiele innych przełączników, które mogą być przydatne w różnych sytuacjach. W razie potrzeby warto zapoznać się z dokumentacją polecenia tar, aby odkryć jeszcze więcej funkcji tego niezastąpionego narzędzia.

Aby uzyskać więcej informacji na temat polecenia tar oraz jego opcji, można skorzystać z oficjalnej dokumentacji, wpisując w terminalu:

man tar

Lub odwiedzając stronę internetową projektu tar, dostępną pod adresem: https://www.gnu.org/software/tar/




cd, mkdir, chmod, chown, rm i zarządzanie uprawnieniami


Systemy operacyjne oparte na Linuksie, takie jak Ubuntu, Debian, Fedora czy Arch, są szeroko wykorzystywane zarówno przez programistów, jak i administratorów systemów. Język poleceń linuksowych jest niezwykle potężnym narzędziem, które pozwala na kontrolowanie i zarządzanie systemem z poziomu terminala. Omówimy podstawowe polecenia linuksowe: cd, mkdir, chmod, chown, rm oraz przełączniki, które można z nimi używać. Dodatkowo, omówimy uprawnienia w systemie Linux oraz ich konstrukcję, wyjaśniając pojęcia takie jak użytkownik (user), grupa (group) i inne (other), a także rwx i zapis liczbowy, np. 777.



Polecenie cd


Polecenie "cd" (change directory) służy do zmiany bieżącego katalogu roboczego. Jest to podstawowe polecenie, które musisz znać, aby poruszać się po strukturze katalogów w systemie Linux. Oto kilka przykładów użycia polecenia cd:

  • cd nazwa_katalogu: przechodzi do podanego katalogu.

  • cd .. : przechodzi do katalogu nadrzędnego (rodzica).

  • cd: przechodzi do katalogu domowego użytkownika.

  • cd -: przechodzi do poprzedniego katalogu roboczego.



Polecenie mkdir


Polecenie "mkdir" (make directory) służy do tworzenia nowych katalogów. Aby utworzyć nowy katalog, po prostu wpisz "mkdir" oraz nazwę katalogu, który chcesz utworzyć. Oto kilka przykładów użycia polecenia mkdir:

  • mkdir nazwa_katalogu: tworzy nowy katalog o podanej nazwie.

  • mkdir -p sciezka/do/katalogu: tworzy katalog wraz z całą strukturą katalogów, jeśli nie istnieją.

  • mkdir -m 755 nazwa_katalogu: tworzy katalog z określonymi uprawnieniami (w tym przypadku 755).



Polecenie chmod


Polecenie "chmod" (change mode) służy do zmiany uprawnień plików i katalogów. W systemach Linux uprawnienia są zdefiniowane dla trzech kategorii: użytkowników (user), grup (group) i innych (other). Każdej z tych kategorii można przydzielić trzy rodzaje uprawnień: odczyt (r), zapis (w) i wykonanie (x). Uprawnienia te są zapisywane za pomocą trzech cyfr, gdzie każda cyfra reprezentuje uprawnienia dla jednej z kategorii (użytkownik, grupa, inne).

Aby zmienić uprawnienia pliku lub katalogu, użyj polecenia chmod, podając upania oraz ścieżkę do pliku lub katalogu. Oto kilka przykładów użycia polecenia chmod:

  • chmod 755 nazwa_pliku: zmienia uprawnienia pliku na 755 (użytkownik: rwx, grupa: r-x, inne: r-x).

  • chmod u+x nazwa_pliku: dodaje uprawnienia do wykonania (x) dla właściciela pliku.

  • chmod g-w nazwa_pliku: usuwa uprawnienia do zapisu (w) dla grupy pliku.

  • chmod o=r nazwa_pliku: ustawia uprawnienia dla innych (other) na tylko do odczytu (r).



Polecenie chown


Polecenie "chown" (change owner) pozwala na zmianę właściciela pliku lub katalogu oraz grupy, do której należy plik lub katalog. Aby zmienić właściciela lub grupę, użyj polecenia chown, podając nowego właściciela, nową grupę oraz ścieżkę do pliku lub katalogu. Oto kilka przykładów użycia polecenia chown:

  • chown nowy_wlasciciel nazwa_pliku: zmienia właściciela pliku na nowego właściciela.

  • chown :nowa_grupa nazwa_pliku: zmienia grupę pliku na nową grupę.

  • chown nowy_wlasciciel:nowa_grupa nazwa_pliku: zmienia zarówno właściciela, jak i grupę pliku na podane wartości.

  • chown -R nowy_wlasciciel:nowa_grupa katalog: zmienia właściciela i grupę dla katalogu oraz wszystkich jego zawartości rekurencyjnie.



Polecenie rm


Polecenie "rm" (remove) służy do usuwania plików i katalogów. Aby usunąć plik lub katalog, użyj polecenia rm, podając ścieżkę do pliku lub katalogu. Oto kilka przykładów użycia polecenia rm:

  • rm nazwa_pliku: usuwa plik o podanej nazwie.

  • rm -f nazwa_pliku: usuwa plik o podanej nazwie bez pytania o potwierdzenie.

  • rm -r katalog: usuwa katalog oraz jego zawartość rekurencyjnie.

  • rm -rf katalog: usuwa katalog oraz jego zawartość rekurencyjnie i bez pytania o potwierdzenie.



Uprawnienia w systemie Linux


Jak wcześniej wspomniano, uprawnienia w systemie Linux są zdefiniowane dla trzech kategorii: użytkowników (user), grup (group) i innych (other). Każdej z tych kategorii można przydzielić trzy rodzaje uprawnień: odczyt (r), zapis (w) i wykonanie (x). Uprawnienia te są zapisywane za pomocą trzech cyfr, gdzie każda cyfra reprezentuje uprawnienia dla jednej z kategorii (użytkownik, grupa, inne).

  • Użytkownik (user): osoba, która jest właścicielem pliku lub katalogu. Właściciel ma największą kontrolę nad plikiem lub katalogiem i może zmieniać jego uprawnienia oraz właściciela i grupę.

  • Grupa (group): zbiór użytkowników, którzy mają wspólne uprawnienia do plików i katalogów. Członkowie grupy mogą mieć dostęp do plików i katalogów na podstawie uprawnień przydzielonych grupie.

  • Inne (other): wszyscy pozostali użytkownicy, którzy nie są właścicielami pliku ani nie należą do grupy, do której należy plik lub katalog. Uprawnienia dla innych określają, co mogą robić z plikiem lub katalogiem pozostali użytkownicy systemu.

Każda z trzech cyfr uprawnień jest reprezentowana przez wartość liczbową w przedziale od 0 do 7, gdzie każda cyfra oznacza sumę wartości dla odczytu (r), zapisu (w) i wykonania (x) dla danej kategorii:

  • Odczyt (r): wartość 4

  • Zapis (w): wartość 2

  • Wykonanie (x): wartość 1

W związku z tym uprawnienia można przedstawić jako trzy cyfry, gdzie każda cyfra jest sumą wartości dla odczytu, zapisu i wykonania. Na przykład, uprawnienia "rwxr-xr-x" można zapisać jako "755", gdzie pierwsza cyfra (7) oznacza pełne uprawnienia dla właściciela (4+2+1), druga cyfra (5) oznacza uprawnienia do odczytu i wykonania dla grupy (4+0+1), a trzecia cyfra (5) oznacza uprawnienia do odczytu i wykonania dla innych (4+0+1).


Podstawowe polecenia linuksowe, takie jak cd, mkdir, chmod, chown, rm, oraz ich przełączniki. Przykłady zastosowania tych poleceń pomogą w lepszym zrozumieniu i sprawnej pracy z systemem Linux. Dodatkowo, przedstawiliśmy koncepcje uprawnień w systemie Linux oraz ich konstrukcję, wyjaśniając pojęcia użytkownik (user), grupa (group), inne (other) oraz rwx i zapis liczbowy, np. 777. Zrozumienie tych koncepcji oraz umiejętne korzystanie z poleceń pozwoli na efektywne zarządzanie systemem Linux oraz kontrolowanie dostępu do plików i katalogów.







cp i mv


Linux, jako system operacyjny oparty na Unixie, oferuje bogaty zestaw poleceń dostępnych z linii komend. Wśród tych poleceń, dwa z nich, cp i mv, są niezbędne do codziennego zarządzania plikami i katalogami. W tym artykule przedstawimy podstawy tych poleceń, ich przełączniki i praktyczne przykłady użycia.



Polecenie cp


Polecenie cp jest używane do kopiowania plików i katalogów. Składnia tego polecenia jest następująca:

cp [OPCJE] ŹRÓDŁO... CEL



Przełączniki polecenia cp


Oto niektóre przydatne przełączniki dla polecenia cp:

  1. -r lub --recursive: Kopiuje katalogi rekursywnie.

  2. -i lub --interactive: Wypytuje użytkownika przed nadpisaniem istniejących plików.

  3. -n lub --no-clobber: Nie nadpisuje istniejących plików.

  4. -u lub --update: Kopiuje tylko, gdy plik źródłowy jest nowszy niż plik docelowy lub gdy plik docelowy nie istnieje.

  5. -v lub --verbose: Wyświetla informacje o kopiowanych plikach.



Przykłady użycia polecenia cp


Kopiowanie pojedynczego pliku do innego katalogu:

cp plik.txt /katalog/docelowy

Kopiowanie wielu plików do innego katalogu:

cp plik1.txt plik2.txt /katalog/docelowy

Kopiowanie katalogu rekursywnie:

cp -r /katalog/źródłowy /katalog/docelowy

Kopiowanie pliku z potwierdzeniem przed nadpisaniem:

cp -i plik.txt /katalog/docelowy

Aktualizacja plików w katalogu docelowym tylko wtedy, gdy plik źródłowy jest nowszy:

cp -u plik.txt /katalog/docelowy



Polecenie mv


Polecenie mv służy do przenoszenia lub zmiany nazwy plików i katalogów. Składnia tego polecenia wygląda następująco:

mv [OPCJE] ŹRÓDŁO... CEL



Przełączniki polecenia mv


Oto niektóre przydatne przełączniki dla polecenia mv:

  1. -i lub --interactive: Wypytuje użytkownika przed nadpisaniem istniejących plików.

  2. -n lub --no-clobber: Nie nadpisuje istniejących plików.

  3. -u lub --update: Przenosi tylko, gdy plik źródłowy jest nowszy niż plik docelowy lub gdy plik docelowy nie istnieje.

  4. -v lub --verbose: Wyświetla informacje o przenoszonych plikach.



Przykłady użycia polecenia mv


Zmiana nazwy pliku:

mv stary_plik.txt nowy_plik.txt

Przenoszenie pojedynczego pliku do innego katalogu:

mv plik.txt /katalog/docelowy

Przenoszenie wielu plików do innego katalogu:

mv plik1.txt plik2.txt /katalog/docelowy

Przenoszenie katalogu do innego katalogu:

mv /katalog/źródłowy /katalog/docelowy

Przenoszenie pliku z potwierdzeniem przed nadpisaniem:

mv -i plik.txt /katalog/docelowy

Aktualizacja plików w katalogu docelowym tylko wtedy, gdy plik źródłowy jest nowszy:

mv -u plik.txt /katalog/docelowy

Polecenia cp i mv są kluczowymi narzędziami dla każdego użytkownika systemu Linux. Pozwala na kopiowanie, przenoszenie i zmianę nazwy plików i katalogów z łatwością. W tym artykule przedstawiliśmy podstawy tych poleceń, ich przełączniki oraz praktyczne przykłady użycia.


Pamiętaj, że zarówno polecenie cp, jak i mv mają jeszcze więcej opcji i przełączników, które można sprawdzić w oficjalnej dokumentacji. Zachęcamy do eksperymentowania z różnymi opcjami, aby znaleźć najlepsze rozwiązania dla swoich potrzeb.


W miarę jak zdobędziesz doświadczenie z tymi poleceniami, zaczniesz doceniać ich elastyczność i potęgę, które pozwalają na zarządzanie plikami i katalogami w systemie Linux.




ps


Polecenie ps (process status) jest jednym z najważniejszych poleceń dostępnych w systemach Linux i Unix. Pozwala ono na monitorowanie aktywnych procesów, zarówno własnych, jak i innych użytkowników. W tym artykule omówimy podstawowe zastosowania polecenia ps, a także różne przełączniki i opcje, które możemy wykorzystać, aby uzyskać więcej informacji o działających procesach.



Podstawowe użycie


Najprostszym sposobem użycia polecenia ps jest wpisanie go bez żadnych dodatkowych argumentów. W ten sposób otrzymamy informacje o procesach, które są uruchomione w bieżącej sesji terminala.

ps

Wynik polecenia może wyglądać następująco:


  PID TTY          TIME CMD
 1932 pts/1    00:00:00 bash
 1996 pts/1    00:00:00 ps

Wynik przedstawia cztery kolumny:

  1. PID (Process ID) – identyfikator procesu.

  2. TTY – terminal, z którego uruchomiono proces.

  3. TIME – łączny czas procesora, który został zużyty przez proces.

  4. CMD – nazwa polecenia użytego do uruchomienia procesu.



Przełączniki i opcje


Polecenie ps posiada różne przełączniki i opcje, które można zastosować w celu uzyskania dodatkowych informacji o procesach. Przełączniki mogą być używane w kombinacji, co pozwala na bardziej szczegółowy przegląd działających procesów.


ps -e: Wyświetla wszystkie procesy systemu.

ps -e

ps -u nazwa_użytkownika: Wyświetla procesy dla określonego użytkownika.

ps -u root

ps -f: Wyświetla pełne informacje o procesach (włączając rodzica, identyfikator grupy procesów, terminal itp.).

ps -f

ps -l: Wyświetla długą listę informacji o procesach (włączając priorytet, stan procesu, itp.).

ps -l

ps -x: Wyświetla procesy bez przypisanego terminala (tzw. "daemon processes").

ps -x

ps -t nazwa_terminala: Wyświetla procesy uruchomione w określonym terminalu.

ps -t pts/1

ps --sort nazwa_pola: Sortuje procesy według określonego pola (np. czasu procesora, zużycia pamięci, identyfikatora procesu itp.).

ps --sort pid

ps -C nazwa_procesu: Wyświetla procesy o określonej nazwie.

ps -C bash

ps -p PID: Wyświetla informacje o procesie o określonym identyfikatorze (PID).

ps -p 1932

ps -o lista_pól: Wyświetla wybrane pola dla każdego procesu. Można podać listę pól oddzieloną przecinkami.

ps -o pid,comm,user

ps -axjf: Wyświetla drzewo procesów, pokazując związki między procesami oraz ich rodzicami.

ps -axjf



Przykłady użycia


Wyświetlanie procesów, które zużywają najwięcej pamięci:

ps -eo pid,comm,%mem --sort -%mem

Wynik przedstawia trzy kolumny: identyfikator procesu (PID), nazwę procesu (comm) oraz procent zużywanej pamięci (%mem), posortowane malejąco według zużycia pamięci.



Wyświetlanie procesów, które zużywają najwięcej czasu procesora:

ps -eo pid,comm,%cpu --sort -%cpu

Podobnie jak w poprzednim przykładzie, wynik przedstawia trzy kolumny: identyfikator procesu (PID), nazwę procesu (comm) oraz procent zużytego czasu procesora (%cpu), posortowane malejąco według zużycia czasu procesora.



Wyszukanie procesów, które zawierają określone słowo kluczowe:

ps -ef | grep "kluczowe_slowo"

Ten przykład łączy polecenie ps z poleceniem grep, które wyszukuje procesy, które zawierają podane słowo kluczowe.



Zabicie procesu o określonym identyfikatorze (PID):

ps -p 1932 | awk 'NR > 1 {print $1}' | xargs kill

W tym przypadku używamy kombinacji poleceń ps, awk oraz xargs do wyszukania i zakończenia procesu o określonym identyfikatorze (PID).






Polecenie ps jest niezwykle użyteczne w zarządzaniu i monitorowaniu procesów w systemach Linux i Unix. Omówiliśmy podstawowe zastosowania polecenia ps, różne przełączniki, które pozwalają na uzyskanie dodatkowych informacji o procesach, oraz przykłady użycia. Dzięki różnym przełącznikom i opcjom, polecenie ps pozwala na analizowanie działających procesów, co jest niezbędne w diagnostyce problemów związanych z wydajnością i zarządzaniem systemem.


Warto jednak pamiętać, że polecenie ps jest jedynie narzędziem do wyświetlania informacji o procesach i, aby wpłynąć na ich działanie, należy użyć innych poleceń, takich jak kill, renice, pkill czy killall. Znajomość poleceń związanych z zarządzaniem procesami jest kluczowa dla administratorów systemów Linux, a także dla programistów i użytkowników, którzy chcą monitorować swoje aplikacje i usługi.


Praktykowanie i eksperymentowanie z poleceniem ps oraz jego przełącznikami pozwoli na lepsze zrozumienie procesów systemowych i ułatwi rozwiązywanie problemów związanych z działaniem systemu. W miarę jak będziesz zdobywać doświadczenie w pracy z poleceń ps, odkryjesz kolejne sposoby jego wykorzystania oraz będziesz w stanie tworzyć coraz bardziej zaawansowane zapytania.


Warto również zaznaczyć, że istnieją inne narzędzia dostępne w systemach Linux i Unix, które mogą pomóc w zarządzaniu procesami, takie jak top, htop, pgrep, pstree czy lsof. Każde z nich ma swoje specyficzne funkcje, które uzupełniają możliwości polecenia ps. Warto więc zgłębić ich działanie i zapoznać się z ich funkcjonalnościami, aby poszerzyć swoją wiedzę na temat zarządzania procesami w systemie Linux.




touch, tee, nano, vim


Unix i Linux oferują różnorodne narzędzia, które umożliwiają edytowanie plików tekstowych. W tym artykule omówimy cztery z nich: touch, tee, nano i vim. Przedstawimy przykłady ich użycia oraz atrybuty dodatkowe, które mogą znacznie ułatwić pracę.



Polecenie Touch


Polecenie Touch pozwala tworzyć puste pliki lub aktualizować datę modyfikacji istniejących już plików. Jest to bardzo przydatne narzędzie, gdy chcemy szybko utworzyć plik lub zmienić datę modyfikacji pliku. Aby utworzyć nowy plik, wystarczy wpisać:

touch nowy_plik.txt

Jeśli plik już istnieje, Touch zmieni datę modyfikacji na aktualną. Na przykład:

touch stary_plik.txt

spowoduje, że data modyfikacji pliku stary_plik.txt zostanie zaktualizowana do bieżącej daty i czasu.

Atrybuty dodatkowe, które można użyć z Touch, obejmują między innymi:

  • -a: zmienia tylko datę dostępu do pliku, a nie datę modyfikacji;

  • -c: nie tworzy nowego pliku, jeśli nie istnieje;

  • -m: zmienia tylko datę modyfikacji, a nie datę dostępu.



Polecenie Tee


Polecenie Tee umożliwia wyjście z jednego strumienia danych do wielu plików jednocześnie. Jest to przydatne, gdy chcemy zapisać dane w kilku plikach jednocześnie lub przekierować je do innego procesu. Aby użyć Tee, wpisz:

ls | tee plik1.txt plik2.txt

W tym przykładzie wyjście z polecenia "ls" zostanie przekierowane do plików plik1.txt i plik2.txt.


Można też użyć Tee, aby zapisywać dane w trybie dopisywania. W tym celu należy dodać atrybut -a. Na przykład:

echo "Nowa linia" | tee -a plik1.txt plik2.txt

Atrybuty dodatkowe, które można użyć z Tee, obejmują między innymi:

  • -i: nadpisuje pliki bez potwierdzania;

  • -p: zachowuje kolejność zapisywania danych z jednego strumienia do kilku plików;

  • -q: w trybie cichym nie wyświetla informacji o zapisywaniu danych do plików.



Polecenie Nano


Nano jest edytorem tekstu wiersza poleceń, który jest łatwy w użyciu i przejrzysty. Może być stosowany zarówno przez początkujących, jak i zaawansowanych użytkowników. Po uruchomieniu Nano, można zacząć edycję pliku, wpisując:

nano nazwa_pliku.txt

Aby zapisać zmianę w pliku, należy użyć kombinacji klawiszy Ctrl + O. Aby wyjść z edytora Nano, należy użyć kombinacji klawiszy Ctrl + X.


Atrybuty dodatkowe, które można użyć z Nano, obejmują między innymi:

  • -c: włącza kolory dla składni;

  • -i: włącza inteligentne automatyczne wcięcia;

  • -v: włącza tryb uruchamiania edytora z kontrolą wersji.



Polecenie Vim


Vim jest jednym z najpopularniejszych edytorów tekstu na linuksie i oferuje wiele funkcji, które umożliwiają szybką i efektywną edycję plików tekstowych. Aby uruchomić Vim, wpisz:

vim nazwa_pliku.txt

Po uruchomieniu Vim, można zacząć edycję pliku. Aby zapisać zmiany, należy wpisać :w, a następnie nacisnąć Enter. Aby wyjść z Vim, należy wpisać :q, a następnie nacisnąć Enter. Jeśli chcemy zapisać zmiany i wyjść z Vim, należy wpisać :wq.


Atrybuty dodatkowe, które można użyć z Vim, obejmują między innymi:

  • -c: wykonuje polecenie po uruchomieniu Vim;

  • -R: uruchamia Vim w trybie tylko do odczytu;

  • -n: wyłącza zapisywanie pliku przed wyjściem z Vim.


Omówiliśmy cztery narzędzia edycji tekstu dla systemów Unix i Linux: Touch, Tee, Nano i Vim. Każde z tych narzędzi oferuje różne funkcje i atrybuty dodatkowe, które umożliwiają efektywną edycję plików tekstowych. Znajomość tych narzędzi jest niezbędna dla osób pracujących z systemami Unix i Linux, zwłaszcza dla programistów i administratorów systemów.




cat, tail, less, head, more


W systemach Linux i Unix, istnieje wiele poleceń, które pozwalają na efektywne zarządzanie i analizowanie plików tekstowych. W tym artykule, omówimy pięć popularnych poleceń, tj. cat, tail, less, head i more. Przedstawimy ich zastosowanie wraz z przykładami oraz dodatkowymi atrybutami, które mogą przydać się podczas pracy z plikami tekstowymi.



cat


Polecenie cat jest używane do wyświetlania zawartości plików tekstowych, konkatenacji plików oraz przekierowywania wyjścia do innych plików. Oto kilka przykładów:


Wyświetlanie zawartości pliku:

cat plik.txt 


Łączenie kilku plików w jeden:

cat plik1.txt plik2.txt > plik_polaczony.txt 


Dodawanie numerów linii do wyjścia:

cat -n plik.txt 


Wyświetlanie plików z zakończeniem każdej linii znakiem $:

cat -E plik.txt 


tail


Polecenie tail umożliwia wyświetlanie ostatnich linii pliku tekstowego. Jest szczególnie przydatne, gdy chcemy monitorować logi systemowe lub aplikacji. Przykłady użycia:


Wyświetlanie ostatnich 10 linii pliku (domyślnie):

tail plik.txt 

Wyświetlanie ostatnich 20 linii pliku:

tail -n 20 plik.txt 

Monitorowanie pliku w czasie rzeczywistym (dynamiczne wyświetlanie zawartości):

tail -f plik.txt 


less


Polecenie less umożliwia przeglądanie zawartości plików tekstowych w trybie stronicowania. Jest szczególnie przydatne, gdy pracujemy z dużymi plikami. Przykłady użycia:


Otwieranie pliku z możliwością nawigacji:

less plik.txt 


Wyszukiwanie ciągu znaków w pliku (po otwarciu pliku):

/wyszukiwany_tekst 


Przechodzenie do następnego wystąpienia ciągu znaków:

n 

Przechodzenie do poprzedniego wystąpienia ciągu znaków:

N 



head


Polecenie head służy do wyświetlania pierwszych linii pliku tekstowego. Przykłady użycia:


Wyświetlanie pierwszych 10 linii pliku (domyślnie):

head plik.txt

Wyświetlanie pierwszych 20 linii pliku:

head -n 20 plik.txt 


Wyświetlanie pierwszych 5 linii kilku plików:

head -n 5 plik1.txt plik2.txt 


more


Polecenie more pozwala przeglądać zawartość plików tekstowych w trybie stronicowania podobnie jak less, ale z mniejszą liczbą funkcji. Przykłady użycia:


Otwieranie pliku z możliwością nawigacji:

more plik.txt 


Przewijanie o jedną linię w dół:

Enter 

Przewijanie o jedną stronę w dół:

Spacja 

Wyszukiwanie ciągu znaków w pliku:

/wyszukiwany_tekst

Omówiliśmy pięć przydatnych poleceń do zarządzania i przeglądania plików tekstowych w systemach Linux i Unix: cat, tail, less, head i more. Każde z nich ma swoje unikalne cechy i zastosowania, które sprawiają, że są niezastąpione podczas pracy z plikami tekstowymi. Znajomość tych poleceń oraz ich dodatkowych atrybutów pozwala na efektywną i wygodną pracę z plikami tekstowymi w środowisku Linux/Unix.


Zachęcamy do eksplorowania manuali (man pages) dla każdego z tych poleceń, aby poznać jeszcze więcej opcji i możliwości, które mogą znacząco ułatwić codzienną pracę z plikami tekstowymi. Aby uzyskać dostęp do manuala dla dowolnego polecenia, wystarczy wpisać man przed nazwą polecenia, np.:

man cat



find, locate, which


Linux to elastyczny i potężny system operacyjny, który oferuje użytkownikom szeroki wachlarz narzędzi do zarządzania plikami i folderami. Trzy z nich to: find, locate oraz which. W tym artykule przyjrzymy się tym poleceniom, omówimy ich zastosowania oraz pokażemy konkretne przykłady użycia.


Polecenie find


Polecenie find to potężne narzędzie, które pozwala wyszukiwać pliki i katalogi w systemie Linux. Find może wyszukiwać pliki na podstawie różnych kryteriów, takich jak nazwa, typ, właściciel, grupa, rozmiar, data modyfikacji i wiele innych.


Składnia polecenia find:

find [ścieżka] [wyrażenie]

Przykład 1: Wyszukiwanie plików o nazwie "test.txt" w bieżącym katalogu:

find . -name "test.txt"

Przykład 2: Wyszukiwanie plików o rozmiarze większym niż 10 MB w katalogu /home/user:

find /home/user -type f -size +10M 

Przykład 3: Wyszukiwanie wszystkich plików należących do użytkownika "user" w katalogu /var:

find /var -user user


Polecenie locate


Polecenie locate to szybkie narzędzie do wyszukiwania plików, które bazuje na indeksie lokalizacji plików. Locate sprawdza swój indeks (aktualizowany przez polecenie updatedb) zamiast przeszukiwać cały system plików, co pozwala na szybsze wyszukiwanie.


Składnia polecenia locate:

locate [opcje] wzorzec

Przykład 1: Wyszukiwanie plików o nazwie "example.txt":

locate example.txt 

Przykład 2: Wyszukiwanie plików o nazwie "example.txt" z limitowaną ilością wyników (maks. 5):

locate -n 5 example.txt 

Przykład 3: Wyszukiwanie plików zgodnych z wyrażeniem regularnym:

locate -r "example.*\.txt"


Polecenie which


Polecenie which służy do lokalizowania plików wykonywalnych w systemie Linux. Which szuka plików wykonywalnych w katalogach wymienionych w zmiennej środowiskowej PATH. Jest to przydatne narzędzie, gdy chcemy dowiedzieć się, która wersja programu jest używana, jeśli istnieje wiele wersji zainstalowanych na systemie.


Składnia polecenia which:

which [opcje] program

Przykład 1: Znalezienie ścieżki do pliku wykonywalnego "python":

which python 

Przykład 2: Znalezienie wszystkich plików wykonywalnych o nazwie "java":

which -a java 

Przykład 3: Znalezienie ścieżki do pliku wykonywalnego "gcc" i wyświetlenie informacji o wersji:

which gcc && gcc --version 


Podsumowanie

W tym Artykule to już koniec. Przedstawiłem kilka poleceń które w linux powinien znać każdy kto zmaierza zaczynać na poważnie swoja przygodę z linux. Oczywiście to nie wszystkie polecenia które warto znać i je używać. W następnym wpisie poruszę kolejne polecenia systemu linux, a teraz juz dziękuję za uwagę.

1172 wyświetlenia0 komentarzy

Ostatnie posty

Zobacz wszystkie

Comments


Śledź nasze wpisy w social media

  • Instagram
  • Facebook
  • Twitter
  • LinkedIn
  • YouTube

Poznaj terraform jedno z najepszych narzedzi do zarządzania infrastrukturą w kodzie (IaC) - w kursie tym przeprowadzam Cię przez proces instalacji i konfiguracji tego narzędzia.

bottom of page