Bash-Skript: Variablenwert aus Datei zuweisen und dabei enthaltene Variablen erhalten bzw. durch dessen Wert ersetzen
Hallo,
ich habe gerade das Problem, dass ich in einem Bash-Skript auf einem Debian-Linux-Server Variablen mit Werte aus jeweils einer Datei "befüllen" muß.
Diese Dateien enthalten alle nur eine Zeile und diese soll einer entsprechenden Variablen zugewiesen werden, was ja nicht schwer ist:
$testvariable=`cat /home/test/testvariable`
Allerdings habe ich jetzt noch das Problem, dass diese in den Dateizeilen gespeicherte Text evtl. nochmals Variablen enthalten können, die dann auch entsprechend "aufgelöst" werden sollen.
Die Variablenwerte stehen deswegen in Dateien, da diese durch eine HTML-Konfigurationsoberfläche so erzeugt werden und jetzt von mir in Bash-Skripts verwendet werden sollen.
Beispiel:
Inhalt Datei testvariableA
13:30
Inhalt Datei testvariableB
Letzte Erfassung $testvariableA Uhr.
$testvariableA=`cat /home/test/testvariableA`
$testvariableB=`cat /home/test/testvariableB`
Ausgabe von $testvariableB:
Letzte Erfassung $testvariableA.
Die $testvariableA wird also hier nicht ersetzt, im Gegensatz zum herkömmlichen Weg wenn ich $testveriableB in gleicher Art direkt "definiere", ohne dass Werte aus der Datei ausgelesen werden.
Gibt es eine Möglichkeit Variablenwerte aus einer Datei auszulesen und dort nochmals enthaltene Variablen durch die aktuellen Werte zu ersetzen anstelle, dass die "verschachtelte" Variablenbezeichnung als fixer String mit übernommen wird?
Besten Dank schon mal für Eure Tipps!
Grüße,
robob.
ich habe gerade das Problem, dass ich in einem Bash-Skript auf einem Debian-Linux-Server Variablen mit Werte aus jeweils einer Datei "befüllen" muß.
Diese Dateien enthalten alle nur eine Zeile und diese soll einer entsprechenden Variablen zugewiesen werden, was ja nicht schwer ist:
$testvariable=`cat /home/test/testvariable`
Allerdings habe ich jetzt noch das Problem, dass diese in den Dateizeilen gespeicherte Text evtl. nochmals Variablen enthalten können, die dann auch entsprechend "aufgelöst" werden sollen.
Die Variablenwerte stehen deswegen in Dateien, da diese durch eine HTML-Konfigurationsoberfläche so erzeugt werden und jetzt von mir in Bash-Skripts verwendet werden sollen.
Beispiel:
Inhalt Datei testvariableA
13:30
Inhalt Datei testvariableB
Letzte Erfassung $testvariableA Uhr.
$testvariableA=`cat /home/test/testvariableA`
$testvariableB=`cat /home/test/testvariableB`
Ausgabe von $testvariableB:
Letzte Erfassung $testvariableA.
Die $testvariableA wird also hier nicht ersetzt, im Gegensatz zum herkömmlichen Weg wenn ich $testveriableB in gleicher Art direkt "definiere", ohne dass Werte aus der Datei ausgelesen werden.
Gibt es eine Möglichkeit Variablenwerte aus einer Datei auszulesen und dort nochmals enthaltene Variablen durch die aktuellen Werte zu ersetzen anstelle, dass die "verschachtelte" Variablenbezeichnung als fixer String mit übernommen wird?
Besten Dank schon mal für Eure Tipps!
Grüße,
robob.
Please also mark the comments that contributed to the solution of the article
Content-ID: 224071
Url: https://administrator.de/forum/bash-skript-variablenwert-aus-datei-zuweisen-und-dabei-enthaltene-variablen-erhalten-bzw-durch-dessen-wert-224071.html
Printed on: January 13, 2025 at 09:01 o'clock
4 Comments
Latest comment
Hier solltest du fündig werden:
http://stackoverflow.com/questions/10683349/forcing-bash-to-expand-vari ...
Grüße Uwe
http://stackoverflow.com/questions/10683349/forcing-bash-to-expand-vari ...
Grüße Uwe