hi liste, ich bräuchte ein perlscript oder ähnliches was sich die ip eines devices holt (z.Bsp. über ifconfig) und diese ip am besten über einen platzhalter in eine file schreibt.....kann mir wer dabei helfen bzw ein fertiges script schicken falls schon vorhanden thx hannes
Hallo Hannes, wieso perl? Geht auch bash? ifconfig | grep eth0 -A 1 | grep 'inet addr' | awk -F: '{print $2}' | cut -b 0-15 > meineIP müßte es auch tun. was umständlich, geht aber. gruß seb
Am Montag, 5. November 2001 15:35 schrieb Sebastian Wolfgarten:
Hallo Hannes,
wieso perl? Geht auch bash? ifconfig | grep eth0 -A 1 | grep 'inet addr' | awk -F: '{print $2}' | cut -b 0-15 > meineIP
müßte es auch tun. was umständlich, geht aber.
gruß seb
was sollen die geraden striche darstellen müssen die genau soeingegeben werden???
hi, diese "geraden striche" arbeiten die befehle nacheinander ab. man nennt die "pipe". gruß seb
On Mon, Nov 05, 2001 at 03:36:51PM +0100, cOSmO wrote:
Am Montag, 5. November 2001 15:35 schrieb Sebastian Wolfgarten:
Hallo Hannes,
wieso perl? Geht auch bash? ifconfig | grep eth0 -A 1 | grep 'inet addr' | awk -F: '{print $2}' | cut -b 0-15 > meineIP
müßte es auch tun. was umständlich, geht aber.
gruß seb
was sollen die geraden striche darstellen müssen die genau soeingegeben werden???
die geraden Striche heissen 'pipes'. Damit wird die Ausgabe von einem Programm als Eingabe von einem anderen verwendet. Versuche mal dieses einfache Beispiel: echo "test" | less Das '>'-Zeichen wie es oben vorkommt wirst Du dann wahrscheinlich auch nicht kennen. Damit wird die Ausgabe von einem Programm in eine Datei umgeleitet. Bsp: echo 'test' > testdatei '>>' funktioniert genauso, ausser dass die ausgabe am Ende der Datei angefuegt wird (anstatt die Datei zu ueberschreiben) '<' nimmt den Inhalt einer Datei als Eingabe fuer ein Programm. bloedes Beispiel: grep "suchstring" datei koennte man auch so schreiben: cat datei | grep "suchstring" oder so: grep "suchstring" < datei Gruss, Oliver
Sorry, falls Ihr diese Mail doppelt erhaltet. Die andere Mail ist aber komischerweise nie bei mir angekommen. On Mon, Nov 05, 2001 at 03:36:51PM +0100, cOSmO wrote:
Am Montag, 5. November 2001 15:35 schrieb Sebastian Wolfgarten:
Hallo Hannes,
wieso perl? Geht auch bash? ifconfig | grep eth0 -A 1 | grep 'inet addr' | awk -F: '{print $2}' | cut -b 0-15 > meineIP
müßte es auch tun. was umständlich, geht aber.
gruß seb
was sollen die geraden striche darstellen müssen die genau soeingegeben werden???
die geraden Striche heissen 'pipes'. Damit wird die Ausgabe von einem Programm als Eingabe von einem anderen verwendet. Versuche mal dieses einfache Beispiel: echo "test" | less Das '>'-Zeichen wie es oben vorkommt wirst Du dann wahrscheinlich auch nicht kennen. Damit wird die Ausgabe von einem Programm in eine Datei umgeleitet. Bsp: echo 'test' > testdatei '>>' funktioniert genauso, ausser dass die ausgabe am Ende der Datei angefuegt wird (anstatt die Datei zu ueberschreiben) '<' nimmt den Inhalt einer Datei als Eingabe fuer ein Programm. bloedes Beispiel: grep "suchstring" datei koennte man auch so schreiben: cat datei | grep "suchstring" oder so: grep "suchstring" < datei Gruss, Oliver
cOSmO (J.Nickel) wrote:
hi liste,
ich bräuchte ein perlscript oder ähnliches was sich die ip eines devices holt (z.Bsp. über ifconfig) und diese ip am besten über einen platzhalter in eine file schreibt.....kann mir wer dabei helfen bzw ein fertiges script schicken falls schon vorhanden
sag mal, findest du perl da nicht ein wenig overkill? Aus meiner rc.firewall extip="`/sbin/ifconfig ppp0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`" -fen
es müsste ja mehrmals pro stunde rund um die uhr ausgeführt werden...und die datei die erstellt wird (mit der aktuellen ip), wird dann auf nen server geuppt deshalb dachte ich anperl kenn mich mit bash programmieren net so aus Am Montag, 5. November 2001 15:52 schrieb Daniel Brachmann:
cOSmO (J.Nickel) wrote:
hi liste,
ich bräuchte ein perlscript oder ähnliches was sich die ip eines devices holt (z.Bsp. über ifconfig) und diese ip am besten über einen platzhalter in eine file schreibt.....kann mir wer dabei helfen bzw ein fertiges script schicken falls schon vorhanden
sag mal, findest du perl da nicht ein wenig overkill?
Aus meiner rc.firewall extip="`/sbin/ifconfig ppp0 | grep 'inet addr' | awk '{print $2}' | sed -e 's/.*://'`"
-fen
Hallo, at Monday 05.11.2001 (16:04 +0100), J.Nickel wrote:
es müsste ja mehrmals pro stunde rund um die uhr ausgeführt werden...und die datei die erstellt wird (mit der aktuellen ip), wird dann auf nen server geuppt
Ich nutze hierfür den ddclient, der meine IP automatisch updated. Zu finden unter http://support.dyndns.org/dyndns/clients/ . Gruß Michael -- Phone/Fax +49 7000 MACBYTE (+49 7000-6222983) Registered Linux User #228306 HomePage http://www.macbyte.info/ PGP-Key http://www.macbyte.info/shared/mykey.pkr ++ CGI-Hosting ++ Domains ++ Webspace ++ PHP Development ++
* cOSmO schrieb am 05.Nov.2001:
ich bräuchte ein perlscript oder ähnliches was sich die ip eines devices holt (z.Bsp. über ifconfig) und diese ip am besten über einen platzhalter in eine file schreibt.....kann mir wer dabei helfen bzw ein fertiges script schicken falls schon vorhanden
Wie hätte der Herr das Skript den gerne? Auf Büttenpapier handgeschrieben, oder doch lieber auf einer CD gebrannt? PS: cOSmO ist ein etwas seltsammer Name, kommt Ihr von einem anderen Planeten, oder doch nur von einem anderen Kontinent. Bernd -- Welches Buch ist zu empfehlen? Schon mal bei SuSE vorbeigesehen? http://www.suse.de/de/produkte/buecher/index.html oder die Empfehlungen der SuSE-Entwickler auf dem eigenen Rechner? file:///usr/shar/doc/sdb/de/html/literatur.html |Zufallssignatur 5
From: "cOSmO (J.Nickel)"
ich bräuchte ein perlscript oder ähnliches was sich die ip eines devices holt (z.Bsp. über ifconfig) und diese ip am besten über einen platzhalter in eine file schreibt.....
Hi, ich glaube, du willst eigentlich was ganz anderes. :-) Du möchtest, daß bei jeder Einwahl gleich deine dynamische IP gespeichert wird, richtig? Bei jeder Einwahl wird das Script /etc/ppp/ip-up ausgeführt, das diese Werte bereits kennt. Dieses Script erweiterst du NICHT. Es wird nämlich bei jedem Update überschrieben. Aus diesem Script heraus wird aber jedesmal ip-up.local im gleichen Ordner aufgerufen. Da kannst du dich austoben. (Die Pendants dazu sind ip-down und ip-down.local, wobei ersteres glaub ich nur ein link ist, aber egal...) ip-up übergibt seine "Erkenntnisse" an ip-up.local, auch die dynamische IP, daher hast du's schön einfach. Hier meine ip-up.local: ---------------------- echo -n "up " >> /home/ratti/extern/OnlineLog.txt date +%Y%m%d%H%M%S_%j_%a >>/home/ratti/extern/OnlineLog.txt echo "$5" > /home/ratti/extern/Online.txt chown ratti /home/ratti/extern/Online.txt chmod 666 /home/ratti/extern/Online.txt fetchmail -a & /etc/ppp/dyndns/register_my_dns --------------------------- Dich interessiert eigentlich nur die dritte Zeile. Zu diesem Zeitpunkt enthält $5 deine IP, tu mit ihr, was du willst. Ich sichere sie mir in meinen smb-Share in die Datei "Online.txt", damit meine selbstgeschriebenen Windows-Tools drauf zugreifen können. Aber die anderen Zeilen könnten auch recht interessant sein, also nimm hinne und mach was draus. :-) Jetzt fehlt eigentlich nur noch ein Trick: Die IP liegt in der Datei rum, und da liegt sie auch noch, wenn das Modem längst aufgelegt hat. Aber halt, da gab es ja das "Auflegescript" ip-down.local. Hier meine: --------------------------- echo -n "down " >> /home/ratti/extern/OnlineLog.txt date +%Y%m%d%H%M%S_%j_%a >>/home/ratti/extern/OnlineLog.txt rm /home/ratti/extern/Online.txt --------------------------- Auch hier interessiert dich wohl nur die dritte Zeile, und auch hier dürfte der Rest trotzdem interessant sein. Das zu verstehen ist jetzt aber Hausaufgabe. :-) Zu deinem Problem: Jedes Programm kann jetzt über die Existenz der Datei "Online.txt" abfragen, ob der Rechner online ist. Wenn ja, existiert die Datei, und dann steht auch gleich die IP drin. Wenn nicht, bist du Offline. Der Rest "...auf meine Site uploaden..." ist dann wieder Hausaufgabe. Wenn es dir aber darum geht, deinen Rechner "von draußen" zu erreichen, dann solltest du dich mal mit dyndns.org auseinandersetzen, das ist was ehrliches und nicht so'n Kinderkram. Siehe dazu "register_my_dns" (Such gar nicht erst danach. Das hab ich selbst gefummelt.:-) ). Meinen Rechner erreichst du, wenn er online ist, unter "gesindel.dyndns.org", und das ist doch cooler als eine IP von deiner Website in den ftp-Client zu kopieren. Das wolltest du doch, oder? ;-) Gruß, Ratti
Hallo, Am Montag, 5. November 2001 15:08 schrieb cOSmO (J.Nickel):
hi liste,
ich bräuchte ein perlscript oder ähnliches was sich die ip eines devices holt (z.Bsp. über ifconfig) und diese ip am besten über einen platzhalter in eine file schreibt.....kann mir wer dabei helfen bzw ein fertiges script schicken falls schon vorhanden
thx hannes
hier kommt noch die sed-only Variante: $ /sbin/ifconfig ppp0 | \ $ sed '/inet Adresse/ b print; b noprint; $ : print s/^ \+.\{13\}// ; s/ .*$//; p ; $ : noprint d' \ $ > MeineIP Kann man natürlich ohne die überflüssigen Leerzeichen auch in eine Zeile packen ;-) Mit freundlichen Grüßen Rudi -- Rudolf Elpelt EMail: elpelt@t-online.de
Am Montag, 5. November 2001 21:59 schrieb Rudolf Elpelt:
Hallo, [...]
Jetzt ist die Mail doch zweimal in der Liste gelandet $#!@!! Scheint ja in letzter Zeit öfter vorzukommen, daß die Liste eine Mail verschluckt und dann evtl. später doch noch ausspuckt. Sorry, Rudi -- Rudolf Elpelt EMail: elpelt@t-online.de
Hallo, Am Montag, 5. November 2001 15:08 schrieb cOSmO (J.Nickel):
hi liste,
ich bräuchte ein perlscript oder ähnliches was sich die ip eines devices holt (z.Bsp. über ifconfig) und diese ip am besten über einen platzhalter in eine file schreibt.....kann mir wer dabei helfen bzw ein fertiges script schicken falls schon vorhanden
thx hannes
hier kommt noch die sed-only Variante: $ /sbin/ifconfig ppp0 | \ $ sed '/inet Adresse/ b print; b noprint; $ : print s/^ \+.\{13\}// ; s/ .*$//; p ; $ : noprint d' \ $ > MeineIP Kann man natürlich ohne die überflüssigen Leerzeichen auch in eine Zeile packen ;-) Mit freundlichen Grüßen Rudi -- Rudolf Elpelt EMail: elpelt@t-online.de
On Mon, 05 Nov 2001, cOSmO wrote:
[..]
==== ~/bin/dynip.sh ====
#!/bin/sh
#
# Copyright (c)2001 David Haller
participants (10)
-
B.Brodesser@t-online.de
-
cOSmO
-
Daniel Brachmann
-
David Haller
-
Elpelt@t-online.de
-
Michael Raab
-
Oliver Kiehl
-
Ratti
-
Sebastian Wolfgarten
-
Thorsten Haude