bash: read line separieren

Dieses Thema: "bash: read line separieren" im Forum "Shell-Skripte" wurde erstellt von r00ki3, 30.06.2005.

  1. r00ki3

    r00ki3 Jungspund

    Dabei seit:
    29.06.2005
    Beiträge:
    20
    Zustimmungen:
    0
    Hallo ihr lieben,

    ich habe noch eine Frage....in einem Skript befindet sich

    while read line;
    [do stuff line$]

    die ausgelesene Datei hat genau EINEN Eintrag pro Zeile.

    Kann ich hinter dem erwähnten EIntrag einen weiteren Eintrag
    mit einem Delimiter setzen, um eine neue Variable für eine weitere Funktion
    erzeugen und nutzen zu können ? Wie spreche ich diese dann an ?
    Oder gibt es ein praktischeres Verfahren ? Wichtig ist die zeilenweise
    zuordnung.

    Daniel
     
  2. Anzeige

    Schau dir mal diesen Ratgeber an. Viele Antworten inkl. passender Shell-Befehle!
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 Schlaubi_fi.de, 30.06.2005
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    Kapier ich nicht, was du meinst...und line$ - wie soll das funktionieren? Du meinst doch sicher $line oder etwa nicht? Es wäre super, könntest du uns ein Beispiel der Eingabe-Datei und dem von dir gewünschten Output geben.
     
  4. tr0nix

    tr0nix der-mit-dem-tux-tanzt

    Dabei seit:
    11.07.2003
    Beiträge:
    1.585
    Zustimmungen:
    0
    Ort:
    Schweiz, Opfikon/Glattbrugg
    Jeps, einfach `read eintrag1 eintrag2` -> z.B. `read vorname nachname`.
     
  5. r00ki3

    r00ki3 Jungspund

    Dabei seit:
    29.06.2005
    Beiträge:
    20
    Zustimmungen:
    0
    Das ist ja ausgezeichnet.....!!!!!

    Vielen Dank.....


    Daniel
     
  6. #5 Schlaubi_fi.de, 30.06.2005
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    Jetzt hab ichs auch kapiert ^^
    Natürlich geht das :D
     
  7. #6 neutrino1, 30.06.2005
    neutrino1

    neutrino1 Mitglied

    Dabei seit:
    03.05.2005
    Beiträge:
    30
    Zustimmungen:
    0
    Hi!

    Seit meinem letzten script verwende ich auch in solchen Konstruktionen arrays, welche einige Vorteile haben.
    Ich geh mal davon aus, daß die Einträge durch Leerzeichen getrennt sind, dann kann man folgendes machen:

    Code:
    cat testfile|while read;do 
    ARRAY_NAME=($REPLY)
    echo ${#ARRAY_NAME[*]}        # Anzahl der Elemente
    echo ${ARRAY_NAME[*]}         # Ausgabe aller Elemente (also der Zeile)
    echo ${ARRAY_NAME[4]}         # 5. Element (weil index bei 0 beginnt)
    echo ${#ARRAY_NAME[4]}        # Zahl der Zeichen vom 5. Element
    done
    
    Ich hoffe, der Code is richtig so, da ich eigentlich die ksh verwende - wie auch immer, ich glaub die kleine Auflistung oben zeigt, was für Vorteile die Verwendung von arrays haben kann.

    Ciao
     
  8. tr0nix

    tr0nix der-mit-dem-tux-tanzt

    Dabei seit:
    11.07.2003
    Beiträge:
    1.585
    Zustimmungen:
    0
    Ort:
    Schweiz, Opfikon/Glattbrugg
    Jeah, Arrays sind cool. Wenn Du nicht Leerzeichen als Trenner hast, kannst du auch die Variable IFS (Internal Field Seperator) setzen & exportieren um diesen Default zu ändern.

    Sprich
    export IFS=":"
    wuerde den Doppelpunkt als Feld-Seperatoren nehmen. Die Variable solltest du bei Gelegenheit mit "unset" wieder leeren damit Du später keine Probs kriegst mit anderen Tools.
     
Thema:

bash: read line separieren

Die Seite wird geladen...

bash: read line separieren - Ähnliche Themen

  1. Sambashare ist Readonly

    Sambashare ist Readonly: Hallo zusammen, seit Tagen quäle ich mich mit meinem Samba Fileserver rum. Ich kann meine Sambashares nur Readonly einbinden. smb.conf...
  2. bash: read -a fehler

    bash: read -a fehler: Hallo Zusammen. Ich hab ein Shell-Script das ich meinem alten Server (centos) funktioniert, aber auf meinem neuen ubuntuserver 8.04 nicht mehr....
  3. eingaberoutine in bash - space mit read

    eingaberoutine in bash - space mit read: Hallo Leute, erst mal ein Lob. Auf meiner Lösungssuche bin ich hier über euer Forum gestolpert, was Ihr hier für Tipps gebt, ist ja richtig...
  4. Bashscript aus Debian6 läuft nicht auf Debian7

    Bashscript aus Debian6 läuft nicht auf Debian7: Hallo an alle, nachdem ich ein Skript von squeeze auf wheezy kopiert habe und ausführte, erschienen gleich wilde Fehlermeldungen, nach denen ich...
  5. Bash sucht neues Logo

    Bash sucht neues Logo: Die GNU Bourne Again Shell (bash) sucht nach knapp 20 Jahren ein neues, individuelles Logo. Alle Anwender und Interessenten sind deshalb...