David Haller schrieb:
Hallo,
Am Sun, 11 Jan 2004, Bernd Obermayr schrieb:
marko schrieb:
/sbin/ifconfig ippp0 | awk --posix '/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9] {1,3}/ { print $2 }' | awk -F : '{ print $2 }'
Ist das OK?
Schaut ja fürchterlich aus ;)
Nuja, das geht ja noch...
/usr/bin/ipaddr -i ippp0
# ipaddr bash: ipaddr: command not found
SuSE 8.2: pin ipaddr /CD1/suse/noarch/shtools-2002.01.30-171.noarch.rpm
# mount /SuSE82 # mount /SuSE82/sys $ cp /SuSE82/usr/bin/ipaddr /tmp/ # umount /SuSE82/sys/ # umount /SuSE82
Ist auch ein Shellscript, weiss der Geier, warum alle das Rad immer neu erfinden wollen ;)))
Aber nicht so. Mal abgesehen vom "drumherum":
==== go() { /sbin/ifconfig | grep "$netif" -A 1 | tail -1 | awk '{print $2}' | sed "s/addr://" } ====
*UAARRRGHHHHH*
Das geht _VIEL_ effizienter:
,----[ ~/bin/dynip.sh ] | #!/bin/sh | # USAGE: dynip.sh [INTERFACE] | | IF="${1:-ppp0}"; | /sbin/ifconfig $IF | sed -n 's/.*addr:\([0-9\.]*\).*/\1/p'; `----
Das was 'ipaddr' da macht ist einfach DOOF[tm].
Mag ja sein, aber es geht und es ist schon da. Deins funktioniert beim OP schon mal garnicht: IF="${1:-ppp0}"; Gefragt war ippp0 Sollst auch nicht immer Recht behalten ;) In Deinem anderen Posting meintest Du noch, dass evtl. die Sprache angepasst werden müsste. Ich hab da mal ein bischen experimentiert: Offenbar ist ifconfig die Sprache egal. Scheint als ob die locale garnicht ausgwertet wird. Ich habe jetzt aber keine Lust den Source zu installieren :) Gruss Bernd