2. Konfigurowanie powłoki

Dokument: pdf (198.8 KB)
  • 6 stron
Opublikowany 2017-07-23 02:21:03

08.03.2017, 00*58MAIN.HTM Strona 1 z 6http://oldwww.imio.pw.edu.pl/wwwvlsi/cad/teaching/soe/materialy/LEKCJA4/SEGMENT2/MAIN.HTM 2. Konfigurowanie interpretera Sposób działania interpretera jest w dużym stopniu ustalany przez parametry i opcje. (2.1) Parametry Parametry są instancjami przechowującymi wartości. Mogą być reprezentowane przez nazwę w postaci ciągu znaków, liczbę naturalną lub jeden ze znaków specjalnych. Parametry reprezentowane przez liczbę naturalną noszą nazwę parametrów pozycyjnych i przechowują argumenty wywołania powłoki. Parametry specjalne mają postać pojedyńczych znaków specjalnych a ich wartości są automatycznie ustawiane i modyfikowane dynamicznie przez powłokę. Parametry reprezentowane przez nazwę określane są jako zmienne. Ustawianie wartości zmiennych odbywa się za pomocą jednego z trzech poleceń: zmienna=[wartość] typeset zmienna=[wartość] declare zmienna=[wartość] Jeśli wartość zostanie pominięta, to zmiennej zostanie przypisany zerowy ciąg znaków. Usunięcie zmiennej umożliwia polecenie: unset zmienna Zmienne można podzielić na dwie kategorie: 1. zmienne środowiska, 2. zmienne lokalne powłoki. Listę wszystkich zmiennych, zarówno lokalnych jak i środowiska, uzyskamy poleceniem: set Odwołanie do wartości dowolnego parametru następuje za pomocą znaku $ w następujący sposób: 08.03.2017, 00*58MAIN.HTM Strona 2 z 6http://oldwww.imio.pw.edu.pl/wwwvlsi/cad/teaching/soe/materialy/LEKCJA4/SEGMENT2/MAIN.HTM $parametr ${parametr} Postać z nawiasami jest konieczna, gdy w poleceniu bezpośrednio za nazwą parametru chcemy umieścić inne znaki oraz gdy nazwa liczbowa składa się z więcej niż jednej cyfry. Przykład [apw@venus]$ x=abc [apw@venus]$ echo $x abc [apw@venus]$ echo $x123 [apw@venus]$ echo ${x}123 abc123 (2.2) Zmienne środowiska Każdy tworzony proces, w tym również każda powłoka, otrzymuje nowe środowisko w postaci tablicy zawierającej ciągi znaków zmienna=wartość. Każdy taki ciąg oznacza utworzenie nowej zmiennej środowiska. Ten początkowy zestaw zmiennych środowiska jest dziedziczony po procesie macierzystym, którym najczęściej jest powłoka uruchamiająca nowy program. W trakcie działania procesu środowisko może być modyfikowane poprzez usuwanie i dodawanie nowych zmiennych oraz przez zmiany ich wartości. Wszystkie modyfikacje znajdują odzwierciedlenie we wspomnianej tablicy. Zmiany te jednak nie przenoszą się do procesu macierzystego. Zasada ta dotyczy również procesów potomnych danego procesu utworzonych przed modyfikacją środowiska. Zmienne środowiska wyróżnia więc to, że nie są związane tylko z lokalną powłoką, ale są dziedziczone przez wszystkie procesy potomne tworzone przez powłokę. Są wykorzystywane przez różne procesy a nie tylko przez proces powłoki. Nie można ich jednak traktować jako zmienne globalne, gdyż nie stają się widoczne dla wszystkich procesów. Całe środowisko można wyświetlić przy pomocy poleceń: printenv lub env Wartość pojedyńczej zmiennej wypisze polecenie: 08.03.2017, 00*58MAIN.HTM Strona 3 z 6http://oldwww.imio.pw.edu.pl/wwwvlsi/cad/teaching/soe/materialy/LEKCJA4/SEGMENT2/MAIN.HTM echo $zmienna Dodanie do środowiska nowej zmiennej polega na wyeksportowaniu zmiennej lokalnej, której trzeba wcześniej przypisać właściwą wartość: zmienna=wartość export zmienna Można to również zrobić w jednym etapie wydając polecenie: export zmienna=wartość Zmienną środowiska można usunąć poleceniem unset, podobnie jak zmienną lokalną. W tablicy 4.1 zebrano najważniejsze zmienne środowiska definiowane w każdej powłoce i wyjaśniono ich znaczenie dla powłoki i innych procesów. Tablica 4.1 Najważniejsze zmienne środowiska Nazwa zmiennej Znaczenie LOGNAME Nazwa zalogowanego użytkownika. USER Nazwa zalogowanego użytkownika. HOME Katalog domowy zalogowanego użytkownika. LANG Język lokalny. PATH Ścieżka poszukiwań programów. CDPATH Ścieżka poszukiwań katalogów. MANPATH Ścieżka poszukiwań dokumentacji systemowej. LD_LIBRARY_PATH Ścieżka poszukiwań bibliotek dynamicznych. PWD Katalog bieżący. SHELL Powłoka uruchamiana po zalogowaniu użytkownika. TERM Typ terminala. MAIL Skrzynka pocztowa zalogowanego użytkownika. MAILCHECK Częstotliwość sprawdzania skrzynki pocztowej. IFS Wejściowy separator pola. TZ Strefa czasowa. 08.03.2017, 00*58MAIN.HTM Strona 4 z 6http://oldwww.imio.pw.edu.pl/wwwvlsi/cad/teaching/soe/materialy/LEKCJA4/SEGMENT2/MAIN.HTM (2.3) Zmienne lokalne powłoki Zmienne lokalne mają znaczenie wyłącznie dla bieżącej powłoki i tylko w niej są widoczne. Nie podlegają dziedziczeniu i nie mogą być wykorzystane przez inne procesy. Sposób definiowana i usuwania zmiennych opisano powyżej. W tablicy 4.2 opisane zostały wybrane zmienne powłoki. Tablica 4.2 Wybrane zmienne lokalne powłoki zsh Nazwa zmiennej Znaczenie ARGC Liczba parametrów pozycyjnych. argv Tablica parametrów pozycyjnych. HISTFILE Nazwa pliku przechowującego historię wydawanych poleceń. HISTSIZE Liczba pamiętanych poleceń. path Ścieżka poszukiwań programów. PS1 Podstawowy komunikat gotowości powłoki wyświetlany, gdy powłok...

Tagi:
  • Konfigurowanie

Komentarze do: 2. Konfigurowanie powłoki • 0