Variablen in bash-script ändern
Hallo!
Ich stehe mal wieder auf allen verfügbaren Schläuchen, vielleicht könnt Ihr mir helfen.
Ich habe ein Script (script.sh) und eine Konfigurationsdatei (script.conf) in der nur Variablen - hauptsächlich IP-Adressen - stehen.
Nun soll im Script der Hostname des Hosts abgefragt werden, und wenn dieser = x, dann soll eine Variable im Script mit dem Inhalt einer anderen gefüllt werden.
Also:
Das funktioniert natürlich so nicht. Ich finde einfach nicht raus, wie ich den wert der $variable ändere. Würde mich freuen, wenn mir das einer erklären könnte. Habt Dank!
Ich stehe mal wieder auf allen verfügbaren Schläuchen, vielleicht könnt Ihr mir helfen.
Ich habe ein Script (script.sh) und eine Konfigurationsdatei (script.conf) in der nur Variablen - hauptsächlich IP-Adressen - stehen.
Nun soll im Script der Hostname des Hosts abgefragt werden, und wenn dieser = x, dann soll eine Variable im Script mit dem Inhalt einer anderen gefüllt werden.
Also:
#!/bin/bash
source /var/meinescripte/hostname.conf
hostname=$(hostname);
if [ "$hostname" = "$hostname1" ]; then $variable=$variable2; else $variable=$variable3_ip; fi
Das funktioniert natürlich so nicht. Ich finde einfach nicht raus, wie ich den wert der $variable ändere. Würde mich freuen, wenn mir das einer erklären könnte. Habt Dank!
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 306665
Url: https://administrator.de/contentid/306665
Ausgedruckt am: 21.11.2024 um 22:11 Uhr
3 Kommentare
Neuester Kommentar
Hi cptkrabbe.
Naja, eigentlich genau so wie du
@Kraemer
~Arano
Naja, eigentlich genau so wie du
hostname
deklarierst - ohne "$" vorweg.then variable=$variable2;
else variable=$variable3_ip;
fi
@Kraemer
man bash
string1 == string2
string1 = string2
True if the strings are equal. = should be used with the test command for POSIX conformance.
string1 == string2
string1 = string2
True if the strings are equal. = should be used with the test command for POSIX conformance.
~Arano