<Poprzedni | Spis treści | Następne>
Więcej informacji na temat kompresji plików i przykładów tworzenia archiwów można znaleźć w rozdziale 9.
7.2. Twoje środowisko tekstowe
7.2.1. Zmienne środowiskowe
7.2.1.1. Ogólny
Wspomnieliśmy już o kilku zmiennych środowiskowych, takich jak PATH i HOME. Do tej pory widzieliśmy tylko przykłady, w których służą one skorupie w określonym celu. Istnieje jednak wiele innych narzędzi linuksowych, które potrzebują informacji o Tobie, aby wykonać dobrą robotę.
Jakich innych informacji oprócz ścieżek i katalogów domowych potrzebują programy?
Wiele programów chce wiedzieć, jakiego rodzaju terminala używasz; informacje te są przechowywane w TERM zmienny. W trybie tekstowym będzie to linux emulacja terminala, w trybie graficznym, którego prawdopodobnie będziesz używać xterm. Wiele programów chce wiedzieć, jaki jest twój ulubiony edytor, na wypadek gdyby musieli uruchomić edytor w podprocesie. Powłoka, której używasz, jest przechowywana w pliku SHELL zmienna, typ systemu operacyjnego OS i tak dalej. Listę wszystkich zmiennych aktualnie zdefiniowanych dla Twojej sesji można wyświetlić, wchodząc w drukuj dowództwo.
Zmienne środowiskowe są zarządzane przez powłokę. W przeciwieństwie do zwykłych zmiennych powłoki, zmienne środowiskowe są dziedziczone przez każdy uruchamiany program, łącznie z inną powłoką. Nowym procesom przypisuje się kopię tych zmiennych, którą mogą czytać, modyfikować i przekazywać kolejno swoim własnym procesom potomnym.
Nie ma nic specjalnego w nazwach zmiennych, z wyjątkiem tego, że najczęściej używane są wielkie litery. Możesz wymyślić dowolną nazwę, chociaż istnieją standardowe zmienne
na tyle ważne, aby było takie samo w każdym systemie Linux, takim jak PATH i HOME.
7.2.1.2. Eksportowanie zmiennych
Zawartość pojedynczej zmiennej jest zwykle wyświetlana za pomocą przegapić polecenie, jak w tych przykładach:
Debby: ~> echo $ ŚCIEŻKA
/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin:/usr/local/bin
Debby: ~> powtórz $MANPATH
/usr/man:/usr/share/man/:/usr/local/man:/usr/X11R6/man
Debby: ~> echo $ ŚCIEŻKA
/usr/bin:/usr/sbin:/bin:/sbin:/usr/X11R6/bin:/usr/local/bin
Debby: ~> powtórz $MANPATH
/usr/man:/usr/share/man/:/usr/local/man:/usr/X11R6/man
Jeśli chcesz zmienić zawartość zmiennej w sposób użyteczny dla innych programów, musisz wyeksportować nową wartość ze swojego środowiska do środowiska, w którym uruchamiane są te programy. Typowym przykładem jest eksportowanie pliku PATH zmienny. Możesz to zadeklarować w następujący sposób, aby móc grać z dołączonym oprogramowaniem symulatora lotu /opt/FlightGear/bin:
Debby: ~> ŚCIEŻKA=ŚCIEŻKA $:/opt/FlightGear/bin To instruuje powłokę, aby nie tylko przeszukiwała programy w bieżącej ścieżce, $ PATH, ale także w dodatkowym katalogu /opt/FlightGear/bin.
Jednakże, dopóki nowa wartość PATH zmienna nie jest znana środowisku, nadal nie będzie działać:
Debby: ~> runfgfs
bash: runfgfs: nie znaleziono polecenia
Debby: ~> runfgfs
bash: runfgfs: nie znaleziono polecenia
Eksportowanie zmiennych odbywa się za pomocą wbudowanego polecenia powłoki eksport:
Debby: ~> eksportuj PATH
Debby: ~> runfgfs
--uruchamia się symulator lotu--
Debby: ~> eksportuj PATH
Debby: ~> runfgfs
--uruchamia się symulator lotu--
W Bash zwykle robimy to w jednym eleganckim kroku:
eksport ZMIENNA=wartość
Tę samą technikę stosuje się do MANTRATH zmienna, która mówi mężczyzna polecenie, gdzie szukać skompresowanych stron podręcznika. Jeżeli nowe oprogramowanie zostanie dodane do systemu w nowych lub nietypowych katalogach, jego dokumentacja prawdopodobnie również będzie znajdować się w nietypowym katalogu. Jeśli chcesz przeczytać strony podręcznika nowego oprogramowania, rozszerz plik MANTRATH zmienna:
Debby: ~> eksportuj MANPATH=$MANPATH:/opt/FlightGear/man
Debby: ~> powtórz $MANPATH
/usr/man:/usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/FlightGear/man
Debby: ~> eksportuj MANPATH=$MANPATH:/opt/FlightGear/man
Debby: ~> powtórz $MANPATH
/usr/man:/usr/share/man:/usr/local/man:/usr/X11R6/man:/opt/FlightGear/man
Możesz uniknąć ponownego wpisywania tego polecenia w każdym otwartym oknie, dodając je do jednego z plików konfiguracyjnych powłoki, patrz Sekcja 7.2.2.
7.2.1.3. Zarezerwowane zmienne
Poniższa tabela zawiera przegląd najpopularniejszych predefiniowanych zmiennych:
Tabela 7-1. Typowe zmienne środowiskowe
Nazwa zmiennej | Przechowywane informacje |
DISPLAY | używany przez system X Window do identyfikacji serwera wyświetlania |
DOMAIN | Nazwa domeny |
REDAKCJA | przechowuje Twój ulubiony edytor linii |
ROZMIAR HIST | rozmiar pliku historii powłoki w liczbie linii |
HOME | ścieżkę do katalogu domowego |
NAZWA HOSTA | lokalna nazwa hosta |
WEJŚCIE | lokalizacja pliku definicji dla urządzeń wejściowych, takich jak klawiatura |
JĘZYK | preferowany język |
LD_LIBRARY_PATH | ścieżki wyszukiwania bibliotek |
NAZWA LOGU | Nazwa użytkownika |
lokalizacja folderu poczty przychodzącej | |
MANTRATH | ścieżki do wyszukiwania stron podręcznika |
OS | ciąg znaków opisujący system operacyjny |
TYP | więcej informacji o wersji itp. |
PAGER | używany przez programy takie jak mężczyzna które muszą wiedzieć, co zrobić w przypadku, gdy wyjściem jest więcej niż jedno okno terminala. |
PATH | szukaj ścieżek poleceń |
PS1 | Podpowiedź podstawowa |
PS2 | monit wtórny |
PWD | obecny katalog roboczy |
SHELL | aktualna skorupa |
TERM | typ terminala |
UID | identyfikator użytkownika |
NAZWA UŻYTKOWNIKA) | Nazwa Użytkownika |
WIZUALNY | Twój ulubiony edytor pełnoekranowy |
XŚRODOWISKO | lokalizacja Twoich osobistych ustawień zachowania X |
ŚCIEŻKA WYSZUKIWANIA PLIKU | ścieżki wyszukiwania bibliotek graficznych |
Wiele zmiennych jest nie tylko predefiniowanych, ale także predefiniowanych za pomocą plików konfiguracyjnych. Omówimy je w następnej sekcji.
7.2.2. Pliki instalacyjne powłoki
Wchodząc do ls -glin polecenie, aby uzyskać długą listę wszystkich plików, w tym tych zaczynających się od kropki, w katalogu domowym, zobaczysz jeden lub więcej plików zaczynających się od . i kończące się rc. W przypadku bashJest to .bashrc. Jest to odpowiednik ogólnosystemowego pliku konfiguracyjnego / Etc / .bashrc.
Podczas logowania do interaktywnej powłoki logowania, Zaloguj Się dokona uwierzytelnienia, ustawi środowisko i uruchomi powłokę. W przypadku bash, kolejnym krokiem jest zapoznanie się z treścią ogólną profil od / Etc, jeśli ten plik istnieje. bash potem szuka ~ / .bash_profile, ~/.bash_login i ~ / .profile, w tej kolejności, oraz czyta i wykonuje polecenia od pierwszego, które istnieje i jest czytelne. Jeśli żaden nie istnieje, / Etc / .bashrc jest stosowany.