Hallo,

ich bräuchte ein sh Script, um einen DynDNS Dienst zu aktualisieren.
ddnss.de ist der Kandidat.

Über eine URl bekomme ich in Plaintext die aktuelle externe ip:
ip.demo.com

ich muss nun vergleich, ob der letzte DynDNS Aufruf mit dieser IP gemacht wurde.
Wenn nicht, aktualisieren

Code:
#!/bin/bash
currentIP=$(curl http://ip.demo.com)
file="last.ip"
lastip=""
if [ -f "$file" ]
then
        lastip=$(cat "$file")
fi
if [ "$currentIP" != "$lastIP" ]
then
        echo "$currentIP" > "$file"
        echo "$currentIP"
        echo "$lastip"
fi
Jedoch scheint es irgendwo ein Problem mit dem Vergleichen der Strings zu geben. Obwohl beide gleich sind, geht er immer in die IF Abfrage rein.
Eventuell Sonderzeichen oder Zeilenumbruch.

Aber ich schreibe mittels echo "$currentIP" > "$file" den Wert in eine Datei und beim nächsten Ausführen ladet er diese wieder ... also müssten die ja gleich sein??

Danke!