Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

IF THEN Statement im bash-script funktioniert nicht

Mitglied: FA-jka

FA-jka (Level 3) - Jetzt verbinden

18.08.2014, aktualisiert 22:32 Uhr, 1226 Aufrufe, 3 Kommentare

Hier mal "so zum Zeigen" das Script, mit dem ich die dynamische IP-Adresse von meinem RasPI aktualisiere:

01.
#!/bin/bash 
02.
03.
hostname=xyz.zapto.org 
04.
getipscript=/root/dyndns/get_ip.sh 
05.
xml_file=/root/dyndns/external_ip.xml 
06.
logfile=/root/dyndns/cronscript.log 
07.
 
08.
dns_ip=$(dig @8.8.8.8 $hostname +short) 
09.
meine_ip=$($getipscript) 
10.
 
11.
date >> $logfile 
12.
 
13.
echo "Externe DNS IP:" $dns_ip >> $logfile 
14.
echo "Externe IP der Fritz! Box:" $meine_ip >> $logfile 
15.
 
16.
if [ "$dns_ip" = "$meine_ip" ] 
17.
then 
18.
  echo "IP-Adressen sind identisch, kein Update notwendig" >> $logfile 
19.
else 
20.
  echo "DNS-IP veraltet, Update erfolgt" >> $logfile 
21.
  ddclient -daemon=0 -debug -verbose -noquiet 2 /etc/ddclient.conf >> $logfile 
22.
fi 
23.
 
24.
echo "" >> $logfile 
25.
echo "" >> $logfile 
26.
echo "" >> $logfile 
27.
root@pinulldrei:~/dyndns#
Wenn ein Update erfolgen soll (also die IP-Adressen unterschiedich sind), wird Zeile 20 ausgeführt. Zeile 21 wird in dem Fall jedoch nicht ausgeführt. Wenn ich den Befehl aus Zeile 21 per cut&paste "händisch" fahre, läuft der problemlos durch.

Warum wird Zeile 21 nicht ausgeführt?
Mitglied: Lochkartenstanzer
18.08.2014, aktualisiert 19.08.2014
Zitat von FA-jka:

Wenn ein Update erfolgen soll (also die IP-Adressen unterschiedich sind), wird Zeile 20 ausgeführt. Zeile 21 wird in dem Fall
jedoch nicht ausgeführt. Wenn ich den Befehl aus Zeile 21 per cut&paste "händisch" fahre, läuft der
problemlos durch.

Warum wird Zeile 21 nicht ausgeführt?

'N Abend

wie stellst du fest, das zeile 21 nicht ausgeführt wird?

Schreib doch dahinter doch einfach noch ein echo, um festzustellen ob die zeile danach ausgeführt wird.

lks

Nachtrag: Stimmen die Pfade? Unter welchem User wird das Skript ausgeführt udn hat der denselben Pfad wie Du, wenn Du das im Terminal ausführst?
Bitte warten ..
Mitglied: FA-jka
19.08.2014 um 08:42 Uhr
Ich habe das Gefühl, Du bist auch der Meinung, dass die Zeile ausgeführt werden müsste

Das mit den Pfaden kann tatsächlich sein. Ich befinde mich auf einer Rootshell und starte das Script direkt -> kein Problem. Ansonsten steht das in der crontab vom Root drin und dort scheint es nicht zu funktionieren.

Ich werde heute Abend mal den vollständigen Pfad vor den ddclient basteln.
Bitte warten ..
Mitglied: Lochkartenstanzer
19.08.2014, aktualisiert um 08:50 Uhr
Zitat von FA-jka:

Ich habe das Gefühl, Du bist auch der Meinung, dass die Zeile ausgeführt werden müsste

Eben. deswegen mein rat, einfach ein zweites echo hinter die ddclient-Zeile zu schreiben, damit man sicher weiß, daß der else-teil komplett abgearbeitet wird.

Das mit den Pfaden kann tatsächlich sein. Ich befinde mich auf einer Rootshell und starte das Script direkt -> kein
Problem. Ansonsten steht das in der crontab vom Root drin und dort scheint es nicht zu funktionieren.

Wenn es aus der root-shell korrekt ausgeführt wird, heißt das, daß das skript in Ordnung ist.

hast Du stderr in der crontab auf /dev/null gebogen oder werden fehler Dir per mail zugestellt? Schau mal in die mails von/an root, die Dir der cron-daemon schickt. da soltle es drinstehen, wenn Du stderr nicht nach /dev/null entsorgt hast.

lks
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Variablen in bash-script ändern
gelöst Frage von cptkrabbeBatch & Shell3 Kommentare

Hallo! Ich stehe mal wieder auf allen verfügbaren Schläuchen, vielleicht könnt Ihr mir helfen. Ich habe ein Script (script.sh) ...

Linux
Umlaute zählen - Bash-Script
gelöst Frage von plutowitschLinux5 Kommentare

Hallo liebe Administratoren, ich würde gerne mit Hilfe eines Codeschnipsels die Umlaute eines Strings zählen. Beispiel: Jemand eine Idee, ...

Ubuntu
Nregp ereignis für bash-script
Frage von rsadmchefUbuntu3 Kommentare

Hallo zusammen Betreibe Lubuntu 14.04 LTS. Wenn ein Browser läuft, kann man mit ngrep einen Netzwerk-Traffic mitschneiden In einer ...

Batch & Shell
Automatisiertes bash Script
gelöst Frage von SpeakerSTBatch & Shell5 Kommentare

Hallo, ich hoffe mir kann hier jemand helfen. Ich versuchen uns unsere Linux Installation zu Autmoatisieren. Dabei sollen Teil ...

Neue Wissensbeiträge
Microsoft
ARD-Doku - Das Microsoft Dilemma
Tipp von Knorkator vor 2 StundenMicrosoft2 Kommentare

Hallo zusammen, vor einigen Tagen lief in der ARD u.a. Reportage. Das Youtube Video dazu dürfte länger verfügbar sein. ...

Windows 10

Neue Sicherheitslücke in Windows 10 (Version 1709) durch Google öffentlich geworden

Information von kgborn vor 20 StundenWindows 10

Vor ein paar Tagen haben Googles Sicherheitsforscher vom Projekt Zero eine Sicherheitslücke im Edge-Browser publiziert. Jetzt wurde eine weitere ...

iOS
IOS 11.2.6 verfügbar
Information von sabines vor 1 TagiOS

Mit dem Update soll der Bug behoben werden, bei dem eine bestimmte Zeichenkette IOS zum Absturz gebracht hat.

Sicherheit
Sicherheitsrisiko: Die Krux mit 7-Zip
Information von kgborn vor 1 TagSicherheit8 Kommentare

Bei vielen Anwendern ist das Tool 7-Zip zum Entpacken von Archivdateien im Einsatz. Die Software ist kostenlos und steht ...

Heiß diskutierte Inhalte
Windows Server
AD DS findet Domäne nicht, behebbar?
Frage von schapitzWindows Server30 Kommentare

Guten Tag, ich habe bei einem Kunden ein Problem mit den AD DS. Umgebung ist folgende: Windows Server 2016 ...

Router & Routing
LANCOM VPN CLIENT einrichten
Frage von Finchen961988Router & Routing27 Kommentare

Hallo, ich habe ein Problem und hoffe ihr könnt mir helfen, wir haben einen Kunden der hat einen Speedport ...

LAN, WAN, Wireless
VPN Cisco ASA5505 PaloAlto PA-200
gelöst Frage von YannoschLAN, WAN, Wireless25 Kommentare

Hallo zusammen, ich würde gerne ein Site-to-Site VPN zwischen den beiden Standorten aufbauen. PaloAlto PA200 Internetanschluss Deutsche Telekom GK ...

SAN, NAS, DAS
Qnap TS-453S Pro - Anbindung Active Directory
Frage von JuckieSAN, NAS, DAS13 Kommentare

Hallo zusammen, ich habe hier eine Qnap TS-453S Pro die sich mal so absolut gar nicht in das Active ...