List Linux Environment Variables
Stell dir vor, dein Computer ist wie eine riesige WG. Jeder Mitbewohner – also jedes Programm, das du benutzt – hat seine eigenen kleinen Eigenheiten und Vorlieben. Aber damit alle friedlich zusammenleben können, gibt es ein paar allgemeingültige Regeln und Absprachen, die Environment Variables!
Diese Variablen sind wie kleine Zettel, die überall in der WG herumliegen. Auf jedem Zettel steht eine Information, die für alle (oder zumindest für einige) Bewohner wichtig ist. Zum Beispiel könnte auf einem Zettel stehen: "LIEBLINGSESSEN=Pizza". Jeder, der diesen Zettel findet, weiß: Aha, hier mag jemand Pizza besonders gerne!
Aber wie findest du diese Zettel in der Linux-WG? Ganz einfach! Du öffnest dein Terminal – das ist wie das schwarze Brett in der WG, wo alle wichtigen Informationen aushängen – und tippst:
printenv
BÄM! Eine riesige Liste erscheint auf deinem Bildschirm. Das sind all die Zettel, die gerade in deiner WG herumliegen. Jede Zeile ist eine Environment Variable, mit einem Namen (links vom Gleichheitszeichen) und einem Wert (rechts vom Gleichheitszeichen).
Manchmal ist die Liste so lang, dass man sich fragt, ob die WG nicht langsam überquillt vor Zetteln. Aber keine Sorge, die meisten davon sind tatsächlich nützlich!
Beispiele gefällig?
Der SUPERWICHTIGE Pfad: PATH
Stell dir vor, du rufst deinen Mitbewohner nach dem Abendessen. Du rufst einfach "Abspülen!" und alle wissen, was zu tun ist, egal wo sie sich gerade in der WG befinden. So ähnlich funktioniert die Variable PATH. Sie enthält eine Liste von Ordnern, in denen dein Computer nach Programmen sucht. Wenn du also "firefox" tippst, sucht dein Computer in diesen Ordnern nach dem Firefox-Programm. Wenn Firefox nicht im PATH steht, müsstest du den kompletten Pfad zum Programm angeben, z.B. "/usr/bin/firefox". Das wäre, als müsstest du jedes Mal, wenn du "Abspülen!" rufst, genau erklären, wer was in welcher Reihenfolge abspülen soll. Unpraktisch, oder?
Wenn ein Programm mal nicht startet, obwohl du es eigentlich installiert hast, ist es oft so, dass der Ordner, in dem das Programm liegt, nicht im PATH enthalten ist. Das ist, als ob dein Mitbewohner zwar da ist, aber dich nicht hört, weil du ihn nicht richtig "gerufen" hast.
Dein Zuhause: HOME
Jeder in der WG hat sein eigenes Zimmer, sein eigenes "Zuhause". Die Variable HOME verrät, wo sich dein persönliches Verzeichnis befindet. Das ist wie dein Schreibtisch in der WG, wo du deine ganzen wichtigen Dokumente und Dateien aufbewahrst.
Wenn du also in deinem Terminal "~/Dokumente" eingibst, weiß dein Computer: Aha, " ~" steht für den Wert von HOME, also das persönliche Verzeichnis des Benutzers. Praktisch, oder? So musst du nicht immer den kompletten Pfad zu deinen Dokumenten angeben.
Deine Lieblingssprache: LANG
Stell dir vor, in der WG wohnen Leute aus aller Welt. Damit alle verstehen, was du sagst, musst du eine Sprache wählen. Die Variable LANG bestimmt die Sprache, die dein Computer verwendet. Wenn LANG auf "de_DE.UTF-8" eingestellt ist, spricht dein Computer Deutsch. Wenn LANG auf "en_US.UTF-8" eingestellt ist, spricht er Englisch. Und wenn LANG auf Klingonisch eingestellt wäre... naja, dann hättest du ein Problem. (Aber das ist sehr unwahrscheinlich.)
Manchmal kann es vorkommen, dass Programme in der falschen Sprache angezeigt werden. Dann musst du die Variable LANG ändern, um dem Programm zu sagen, welche Sprache du bevorzugst.
Noch mehr Zettel!
Es gibt noch viele weitere Environment Variables, die in deiner Linux-WG herumliegen. Zum Beispiel: USER (dein Benutzername), EDITOR (dein Lieblingseditor) und TERM (der Typ deines Terminals). Jede Variable hat ihren eigenen Zweck und hilft den Programmen, besser zusammenzuarbeiten.
Fazit: Zettelwirtschaft mit System
Die Environment Variables sind wie das Betriebssystem der WG. Sie sorgen dafür, dass alle Bewohner die gleichen Regeln befolgen und friedlich zusammenleben können. Und mit dem Befehl printenv kannst du jederzeit überprüfen, welche Regeln gerade gelten. Also, schau ruhig mal in deiner Linux-WG vorbei und entdecke die Welt der Environment Variables! Es ist spannender, als es sich anhört – versprochen!
