+ Antworten
Ergebnis 1 bis 6 von 6

Bash-Script split(string,array,seperator)

Diskussion über Bash-Script split(string,array,seperator) in Linux + Unix der Kategorie Fachliches; Hallo zusammen, ich schreibe derzeit ein Bash-Script, in dem ein String wiefolgt gefüllt ist: string="Apps/ Cpu/ Docs/ " diesen möchte ...

  1. #1
    Reg.-Benutzer
    Reg.-Datum
    28.02.2007
    Beiträge
    36

    Standard Bash-Script split(string,array,seperator)

    Hallo zusammen,

    ich schreibe derzeit ein Bash-Script, in dem ein String wiefolgt gefüllt ist:

    string="Apps/ Cpu/ Docs/ "

    diesen möchte ich jetzt in ein Array aufsplitten. Trennzeichen soll dabei "/ " sein.

    Meines erachtens reicht dazu die Funktion split(string,array,seperator) mein Problem ist, wie definiere ich den Seperator mit regular expressions genau, damit an "/ " geteilt wird?

    Schonmal danke für Eure Hilfe!

    Gruß zyclon

  2. #2
    Reg.-Benutzer Avatar von Whatever
    Reg.-Datum
    25.10.2005
    Beiträge
    375

    Standard

    Ich geh mal davon aus, dass du das in einem Array brauchst du darüber zu iterieren...das kannst du dir aber sparen:
    Code:
    string="Apps/ Cpu/ Docs/ "
    IFS="/ "
    
    for item in $string; do
      echo $item
    done

  3. #3
    Reg.-Benutzer
    Reg.-Datum
    28.02.2007
    Beiträge
    36

    Standard

    Das bringt mich erstmal ein bisschen weiter, danke!

    Aber ich brauch das definitiv in nem Array, da sich der ganze Spaß unter Umständen mit weiteren Werten aus anderen Variablen füllt.
    Die Werte werden später wieder zur Pfadbildung benötigt, weshalb ich expliziet mit nem Index darauf zugreifen will. Jedesmal da mit einer Schleife durchrennen ist mir zu blöd.
    Okay, ich könnte jetzt einfach an Stelle von echo in ein Array schreiben, aber ist das nicht bissl umständlich?

    Also, bitte weiter ;-)

    Ich hab da grade echt kein Plan, wie ich das mit dem Seperator hinbekomme...

  4. #4
    Reg.-Benutzer Avatar von Whatever
    Reg.-Datum
    25.10.2005
    Beiträge
    375

    Standard

    Code:
    string="Apps/ Cpu/ Docs/ "
    IFS="/ "
    array=($string)
    
    echo ${array[0]}
    echo ${array[1]}
    echo ${array[2]}

  5. #5
    Reg.-Benutzer
    Reg.-Datum
    28.02.2007
    Beiträge
    36

    Standard

    naja,

    warum einfach, wenn's auch kompliziert geht.

    Danke!

  6. #6
    Reg.-Benutzer Avatar von Whatever
    Reg.-Datum
    25.10.2005
    Beiträge
    375

    Standard

    It's Bash Magic

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

Ähnliche Themen

  1. Antworten: 34
    Letzter Beitrag: 04.01.2006, 09:33
  2. CGI Problem - Script funzt per Web nicht
    Von given_to_fly im Forum Skript- und Webserverprogrammierung
    Antworten: 5
    Letzter Beitrag: 20.07.2004, 11:25
  3. ftp login per bash script
    Von MaxPower im Forum Linux + Unix
    Antworten: 7
    Letzter Beitrag: 11.03.2004, 17:29
  4. Cron Daily Script
    Von robotto7831a im Forum Linux + Unix
    Antworten: 2
    Letzter Beitrag: 24.07.2003, 13:22
  5. Picture PHP Script
    Von kills im Forum Skript- und Webserverprogrammierung
    Antworten: 4
    Letzter Beitrag: 17.06.2003, 13:09

Die häufigsten Suchbegriffe für diese Seite:

bash split

bash split string

bash string array

bash split array

linux bash split stringbash string splitbash split string into array