cptkrabbe
Goto Top

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:
#!/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!

Content-ID: 306665

Url: https://administrator.de/contentid/306665

Printed on: December 4, 2024 at 02:12 o'clock

Kraemer
Kraemer Jun 09, 2016 updated at 12:32:45 (UTC)
Goto Top
Moin versuche es mal mit

if [ "$hostname" == "$hostname1" ]  
oder mit
if [ "$hostname" -eq "$hostname1" ]  

Gruß Krämer
Arano
Solution Arano Jun 09, 2016 updated at 12:58:16 (UTC)
Goto Top
Hi cptkrabbe.

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.


~Arano
cptkrabbe
cptkrabbe Jun 13, 2016 at 12:13:55 (UTC)
Goto Top
Vielen Dank, Du hast mir wirklich sehr geholfen! Alles ist gut face-smile