regulärer ausdruck mit awk

B

bigman007

Jungspund
Hi leute,
hab in einer Variable die Ip Adresse gespeichert und wurde es gerne mit awk prufen obs auch wirklich ip adressen format hat.
ich krieg das aber leider nicht hin.

wie krieg ich denn das hin, kann mir einer villeicht helfen?

Code:
awk '/[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}/' ${ip}
so gehts nicht
 
Hallo bigman007

Mit awk kenn ich mich leider nich so aus, d.h ich weiss nicht was genau falsch ist an deinem Vorschlag.
Wenn man das so ungefähr mit 'sed' abbildet klappt das wunderbar:
Code:
echo $ip | sed 's/[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\.[0-9]\{1,3\}/ich könnte eine ip sein/'

///edit:
allerdings bist du auch wenn die RegExp matcht nicht sicher, dass das auch eine gültige IP ist... (Matcht auch auf 888.888.999.555)

Grüsse
d22
 
Zuletzt bearbeitet:
hallo dizzgo
zuerst mal danke für deine Antwort.
ich wurde das noch aber in eine VAriable rein schreiben geht aber nicht:)

bei mir gehts nur um das ip format ,falls true zuruck geliefert wird ist es eine gultige ip da die ip adressen von netstat kommen.


Hat villeicht auch jemand nen AWK lösung???

welches ist eigentlich besser awk oder sed??
 
Hmm, ich versteh jetzt nicht ganz was du in der Variable haben willst...
 
liefert mir das kein wert zuruck obs richtig ist oder falsch?
ich wurd nacher gern mit einer if bedingung kontrollieren ob das format passt oder nicht.
 
ok danke dir, das hilft ma.

aber wenn es jemand weiss würd ich trotzdem gerne wissen wie ich mit awk das mache
 
Hallo

Wenn du unbedingt mit awk true oder false ausgeben willst, dann tu es doch einfach mit print.
Das ist aber totaler overkill, denn grep ist hier schneller und effizienter.

V=$(echo "foo bar"|awk '/^foo/{print "0"}')
if [ "$V" -eq "0" ]; then
echo "Variable steht auf true"
fi

awk sein eigener Returnwert wird ja auf erfolgreiches Ausführen von awk selbst gesetzt. Das ist auch dann true, wenn awk nicht matcht (aber erfolgreich gestartet und beendet wurde...).
Bei grep sieht das eben anders aus, schon deshalb ist das hier besser geeignet.

Gruß Wolfgang
 

Ähnliche Themen

Daten Convertieren und auf einen Server schieben?

[Gelöst] Suchen und ersetzen mit Hilfe mehrerer Parameter

Keine Zugriff von Windows 10 auf Sambafreigaben

mittels if abfrage datei nach variabelnwert durchsuchen

Verständnisfrage zu folgendem Skript...

Zurück
Oben