Folgendes kleine Script habe ich geschrieben:
---
#!/bin/bash
rm /home/ip.txt
touch /home/ip.txt
MYIP=`/sbin/ifconfig ppp0 | grep P-z-P | cut -d: -f2 | cut -d" " -f1`
echo "$MYIP" >> /home/ip.txt
#
#
exit 0
----
Wenn ich dieses Script nun laufen lasse (über /etc/ppp/ip-up.local), hat die Variable MYIP nie einen Inhalt und die IP lautet damit "" (also 0 Zeichen). Per Cron ausgeführt kommt es leider aufs Selbe hinaus. Manuell (in der Shell) hingegen funktioniert es tadellos.
Und...
----
/sbin/ifconfig ppp0 | grep P-z-P | cut -d: -f2 | cut -d" " -f1 >> /home/ip.txt
----
... funktioniert in der Shell wunderbar. Auch als Script (manuell ausgeführt) funzt es. Aber automatisch wieder nicht... *heul*
Selbst wenn ich diese Zeile einfach in die Crontab schreibe, führt er es zwar aus, aber schreibt ebenfalls wieder 0 Zeichen in die Datei.
Ich verstehe die Welt leider nicht mehr! :( Wäre genial, wenn mir jemand weiterhelfen könnte...
Gruss
Lenz
Linux 15.004 Themen, 106.699 Beiträge
Welche Adresse willst du denn ueberhaupt haben?
Deine, also = inet Adresse
oder
die von der Gegenstelle = P-z-P
?
Wenn du die P-z-P haben willst, musst du das schreiben:
/sbin/ifconfig ppp0 | grep P-t-P | cut -d: -f3 | cut -d" " -f1
Also -f3
Ich wiess jetzt, wo der Fehler liegt. Deine Ausgabe ist in deutsch, wenn du das aber aus der ip-up oder crontab aufrufst, ist die Ausgabe in Englisch.
Deshalb musst du anstatt P-z-P einfach P-t-P schreiben. Versuch es mal.
Bye, Klaus