Hi,

> bin gerade dabei, ein kleines Shellscript (Bash) zu schreiben und stosse 
> auf folgendes Problem:
> Ich habe einen String im Format String1/String2/String3
> 
> Nun brauche ich davon aber immer nur den String nach dem letzten "/". Die 
> Länge ist allerdings variabel, so dass ich nciht weiß, wieviel Slashes 
> enthalten sind. Weiß jemand Rat, wie ich an den letzten Schtring komme???

$ foo="sagasg/dsfagadg/dfgsdfg/sdfgsdfg/dfsg"
$ echo ${foo##*/}
dfsg
$ basename $foo
dfsg

"basename" funktioniert nur bei Slashes ;-)

/Markus


P.S.: Diese Antwort ging wohl nicht an die Liste...

Aber nachdem ich die zum Teil sehr komplexen Lösungsvorschläge gelesen
habe hier auch nochmal das Beispiel mit ${foo##*/}

Das ist das mit Abstand einfachste.
--
Linux mailing list [email protected]
subscribe/unsubscribe: http://lug-owl.de/mailman/listinfo/linux
Hinweise zur Nutzung: http://www.lug-owl.de/Mailingliste/hints.epo

Antwort per Email an