Wie kann ich Umgebungsvariablen in Bash-Skript auswerten?

3 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet

Das ist einfach: Du musst nur in einer for-Schleife den Output von $(printenv) bzw. $(env) mit den Mitteln der Bash pruefen. Also zuerst die Schleife "for i in $(env) ; do" und dann ein Test wie "if [[ ${i} == MEIN_STRING ]]". (Hinweis: Da in meinem Beispiel die doppelten [ ] benutzt werden, braucht man die Ausdruecke nicht in "" schreiben.)


Cuchulainn 
Beitragsersteller
 24.01.2008, 14:03

Vielen vielen Dank. Jetzt bin ich auf jeden Fall ein Stück weitergekommen.

dataghost  23.01.2008, 19:27

Der Text MEIN_STRING steht zwischen zwei Sternchen. Leider konnte ich die hier nicht richtig schreiben ;)

probiere das Folgende im Terminal ...

set |grep suchstring

... wenn erfolgreich, packe das in ein Script und mache es ausführbar

also etwa so

#!/bin/bash
set |grep $1

das sollte reichen!

Falls du Leer- und Sonderzeichen verwenden willst, klammere mit ", also "$1"

Woher ich das weiß:eigene Erfahrung – Intensive Beschäftigung hiermit seit etlichen Jahren

Das Auslsen von Umgebungsvariablen in einem Bash Script ist trivial: Um die Variable test auszulesen, schreibt man einfach $test. Schwieriger ist da, auf alle Umgebungsvariablen zuzugreifen, die mit test anfangen...