223
08.03.07, 08:47
Hallo,
ich möchte über IFS einen String zerlegen. Der String soll immer nach der Zeichenfolge ",<space>" getrennt werden.
Ich habs damit versucht, es funktioniert soweit, nur trennt er nicht nur nach ",<space>" sondern auch einfach nach "<space>":
#!/bin/bash
export IFS=", "
Satz="user, \"Vorname Nachname\", bla bla bla, bla bla bla"
set -- $Satz
echo "Username: " $1
echo "VorNachname: " $2
unset IFS
Ich könnte nun einfach sagen:
echo "VorNachname: " $2 $3 - dies geht aber nur solange gut, wie wirklich auch Vor und Nachname im String stehen. Ist der String z.B.:
Satz="admin, \"admin\", bla bla bla, bla bla bla"
so bekomme ich für das
echo "VorNachname: " $2 $3 den Wert: admin bla bla bla
Kann mir jemand behilflich sein und mir sagen wie ich nur die angegebene Zeichenreihenfolge trenne und nicht auch die einzelnen Zeichen der angegebenen Zeichenreihenfolge?
ich möchte über IFS einen String zerlegen. Der String soll immer nach der Zeichenfolge ",<space>" getrennt werden.
Ich habs damit versucht, es funktioniert soweit, nur trennt er nicht nur nach ",<space>" sondern auch einfach nach "<space>":
#!/bin/bash
export IFS=", "
Satz="user, \"Vorname Nachname\", bla bla bla, bla bla bla"
set -- $Satz
echo "Username: " $1
echo "VorNachname: " $2
unset IFS
Ich könnte nun einfach sagen:
echo "VorNachname: " $2 $3 - dies geht aber nur solange gut, wie wirklich auch Vor und Nachname im String stehen. Ist der String z.B.:
Satz="admin, \"admin\", bla bla bla, bla bla bla"
so bekomme ich für das
echo "VorNachname: " $2 $3 den Wert: admin bla bla bla
Kann mir jemand behilflich sein und mir sagen wie ich nur die angegebene Zeichenreihenfolge trenne und nicht auch die einzelnen Zeichen der angegebenen Zeichenreihenfolge?