Personalizacja powłoki
Ten artykuł jest niekompletny i wymaga rozbudowy. Szczegóły można znaleźć na stronie dyskusji.
Z powłoką, chcąc czy nie chcąc, po pewnym czasie na pewno zetknie się każdy administrator systemu. Być może, nastąpi to za pomocą półprzezroczystego, graficznego emulatora terminala lub ascetycznej konsoli, jednak zetknie się z tą samą powłoką - domyślnie w openSUSE, bashem. W tym artykule można znaleźć informacje, jak uczynić ją "milszą" dla użytkownika - otwierającą pliki za pomocą ulubionego edytora, bardziej tolerancyjną na literówki i itd.
Spis treści |
| Uwaga: Artykuł został napisany z założeniem, że użytkownik używa domyślnej powłoki openSUSE - czyli basha. |
.bashrc a .bash_profile
Wydaje się, że nie ma różnicy pomiędzy tymi plikami. Oba są wczytywane podczas startu powłoki oraz w obu wpisuje się zmienne/komendy, które mają być uruchomione przy starcie. Jaka więc jest różnica?
Zawartość pliku .bash_profile jest wykonywana, tylko wtedy gdy uruchomiona powłoka jest powłoką logowania się, lub została uruchomiona z parametrem --login. W innych przypadkach jest wykonywana tylko zawartość pliku .bashrc. W openSUSE dodatkowo w pliku .bash_profile są zawarte poniższe linijki:
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
które każą powłoce pobrać i wykonać komendy z pliku .bashrc, który leży tuż obok, w katalogu domowym danego użytkownika.
Można ustawić terminale GNOME czy Xfce jako powłoki logowania - wystarczy w konfiguracji tych programów wybrać Uruchomienie w roli powłoki startowej dla gnome-terminal, i Uruchom w roli powłoki startowej dla Terminal.
Aliasy
Istniejące aliasy można wyświetlić za pomocą polecenia alias, które służy także do tworzenia nowych aliasów. Ale co to jest ten alias? Łacińskie słowo alias oznacza między innymi inaczej. Funkcjonalność aliasów jest podobna - pozwala nadać poleceniom inne nazwy. Najprościej można je określić jako "skróty" do komend.
Określa je się tak:
alias skrót='polecenie'
Niektórym użytkownikom zdarza się popełniać literówki, takie jak wpisywanie sl zamiast ls. Mogą oni wpisać w pliku .bashrc następującą linijkę:
alias sl='ls'
Dzięki temu, jak znowu wpiszą sl powłoka uruchomi program ls, a nie pokaże błędu.
Dopełnianie opcji w komendach
Każdy użytkownik zna niewątpliwie użyteczną funkcje powłoki bash, jaką jest dopełnianie ścieżek do plików czy katalogów przy naciśnięciu klawisza Tab. Można tę funkcję łatwo rozszerzyć o dopełnianie opcji dla komend, instalując pakiet bash-completion za pomocą ulubionego menedżera pakietów.
Fortunki
Dość miłym akcentem są pojawiające się przy starcie powłoki fortunki. Niestety, nie pojawiają sie automatycznie po instalacji pakietu fortune z głównego repozytorium dystrybucji. Aby to zmienić, wystarczy dopisać na końcu pliku .bashrc fortune.
Po pewnym czasie prawdopodobnie każdy znajdzie znajdzie grupę ulubionych fortunek. Dla jednego to będą te związane z linuksem, a ktoś może jest fanem serialu Star Trek. Łatwo można skonfigurować wyświetlanie tylko ulubionej kategorii, dodając jej nazwę jako argument polecenia fortune, na przykład:
fortune startrek
Listę dostępnych kategorii można przejrzeć za pomocą polecenia ls /usr/share/fortune/. Więcej informacji o wpływaniu na rodzaj wyświetlonych fortunek można znaleźć na stronie podręcznika systemowego poświęconej programowi fortune.
Zmienne
Zmienne w powłoce można ustawić na stałe w pliku .bashrc. Wpis dla zmiennej 'TEST' wygląda tak:
export TEST=wartość
Zmienna będzie dostępna po ponownym uruchomieniu powłoki, lub po wydaniu polecenia:
. .bashrc
- BROWSER - przeglądarka
- Niestety, zawartość tej zmiennej jest używana tylko przez kilka programów działających w trybie tekstowym, takich jak na przykład man.
- EDITOR, VISUAL - edytor
- Określają domyślny edytor tekstu. Te zmienna są dość często używane, więc lepiej wybrać ulubiony edytor, niż w sytuacjach awaryjnych uczyć się obsługi (na przykład) vima. Nie najlepszym pomysłem jest ustawienie edytora, który do działania wymaga serwera X, ponieważ na przykład w razie jego awarii edytor nie będzie dostępny.
- PS1, PS2 - znaki zachęty
- Pierwszy jest używany w pojedynczych poleceniach, a drugi w poleceniach wykorzystujących kilka linii. Na przykład, po uruchomieniu powłoki widzisz zawartość zmiennej PS1, a po wpisaniu ls \ i naciśnięciu enter widzisz zawartość zmiennej PS2. Domyślnie pierwsza zmienna zawiera $(ppwd \l)\u@\h:\w> a druga >.