Skip to content

Artykuły oznaczone jako: bash

Jak zweryfikować status poleceń w pipe

Ja zbytnio się nie nadaję na programistę ale czasem jakieś trzeciorzędne skrypty nawet potrafię napisać. Problem ze skryptami jest taki, że mogą one nie do końca działać jak należy. Zwykle w takich przypadkach, skrypt zwraca jakiś kod wyjścia. Z reguły też jest on inny od 0, który z kolei oznacza, że skrypt został wykonany prawidłowo. Załóżmy teraz, że wywołujemy szereg poleceń. Każde z nich przekierowuje swoje wyjście na wejście innego polecenia przy pomocy znaku | (pipe) . Jak w takim przypadku ustalić czy wszystkie z tych poleceń w łańcuchu wykonały się poprawnie? W tym wpisie postaramy się odpowiedzieć na to pytanie.

Czytaj cały wpis

Jak wypakować każde archiwum

Archiwum .tar.gz czy też każde inne, np. .zip lub .rar , jest bardzo użyteczne przy przesyłaniu przez sieć plików między wieloma maszynami. Nie dość, że zaoszczędzają nam sporo transferu, to jeszcze do tego operujemy na jednym pliku. Problem z tymi wszystkimi rodzajami archiwów jest taki, że do każdego z nich mamy inne narzędzia. Zwykle też każde z tych narzędzi ma inne opcje, które taką paczkę potrafią wypakować. Przydałby się zatem sposób, który ogarnąłby wypakowanie różnych archiwów i sprowadzałby się do wydania w terminalu tylko jednego polecenia, bez potrzeby pamiętania nazw narzędzi i ich opcji. W tym wpisie postaramy się coś takiego zaimplementować na swoich linux'ach.

Czytaj cały wpis

Kolorowanie wyjścia terminala

Każdy terminal jest w stanie wyświetlić tekst w kilku kolorach. Zwykle mamy ich do dyspozycji 8 lub 16. Niektóre terminale potrafią rozróżniać nawet 256 kolorów. Niemniej jednak, kolor całego tekstu jaki jest wyświetlany w terminalu jest zwykle jednolity i nie ma w nim praktycznie żadnych urozmaiceń. W taki sposób mamy czarny tekst i białe tło. Jako, że te terminale są w stanie wyświetlić więcej kolorów, to dla większej czytelności przydałoby się skonfigurować kolorowanie wyjścia takich narzędzi jak ls , grep czy man . Jesteśmy w stanie pokolorować także szereg innych rzeczy i o tym będzie ten poniższy wpis.

Czytaj cały wpis

Uzupełnianie poleceń w bash (bash completion)

Bash nie nadaje się dla nieco bardziej zaawansowanych użytkowników linux'a. Najbardziej odczuwalnym elementem bash'a jest brak uzupełniania poleceń za pomocą klawisza Tab . Nie mówimy tutaj o przeszukiwaniu zmiennej $PATH pod kątem dopasowań pliku wykonywalnego do tego co wpisujemy aktualnie w terminalu. Nie chodzi też o uzupełnianiu ścieżek podawanych do cd ale o opcje, które jakiś program może przyjąć jako argument. Zwykle musimy się uczyć ich na pamięć lub zaglądać do help'a czy manuala. Możliwe jest jednak skorzystanie z dodatku zwanego bash completion, który w sporej części przypadków potrafi dostarczyć dość zaawansowane uzupełnianie poleceń, którymi się posługujemy na co dzień. Ten wpis ma na celu pokazanie jak włączyć ten cały mechanizm i uprościć sobie nieco życie podczas pracy w terminalu.

Czytaj cały wpis

Plik .bashrc, czyli konfiguracja bash'a

Jakiś czas temu opisywałem konfigurację historii bash'a w pliku .bash_history ale możliwości konfiguracyjne bash'a nie ograniczają się jedynie do zmiany kilku parametrów czy zmiennych dotyczących historii wpisywanych w terminalu poleceń. Ten wpis ma na celu zebranie tych bardziej użytecznych funkcjonalności bash'a, które często są wykorzystywane przez użytkowników linux'a i dopisywane w pliku .bashrc .

Czytaj cały wpis

Plik .bash_history, czyli historia poleceń bash'a

Operowanie na linux'ie wiąże się w dużej mierze z wpisywaniem poleceń do terminala. Każdy kto spędził trochę czasu w tym systemie, wie, że do komfortowej pracy potrzebny jest przyzwoicie skonfigurowany shell. Domyślnym shell'em w debianie, jak i wielu innych linux'ach, jest bash. Każdy z nas na początku wpisywał wszystkie polecenia ręcznie i nawet nie wiedział, że istnieje coś takiego jak uzupełnianie pewnych fraz, czy też nazw, przy pomocy klawisza Tab . Z czasem nasz stopień poznania jakiejś dystrybucji linux'a osiąga pewien dość zaawansowany poziom i wpisywanie za każdym razem tych samych poleceń jedynie spowalnia naszą pracę. Dlatego właśnie bash, podobnie jak i inne shell'e, mają swoje pliki konfiguracyjne, w których to możemy dostosować naprawdę sporo rzeczy. W tym wpisie skupimy się na historii poleceń, która trafia do pliku .bash_history w katalogu domowym każdego użytkownika w systemie.

Czytaj cały wpis

Automatyczne wylogowanie użytkownika z konsoli

Każdemu z nas zdarzyło się zostawić włączoną konsolę, na której byliśmy zalogowani jako administrator systemu root. Być może nie zdajemy sobie sprawy jak często potrafimy popełnić tego typu gafę. Jedną z metod obrony jest oczywiście wyłączenie konta root w systemie i korzystanie z sudo. Ja jednak wolę inne rozwiązanie, które zakłada ograniczenie czasu bezczynności, po którym to użytkownik zostanie automatycznie wylogowany.

Czytaj cały wpis