Sortierungsproblem Bash

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von karloff, 02.07.2010.

  1. #1 karloff, 02.07.2010
    karloff

    karloff Routinier

    Dabei seit:
    09.07.2007
    Beiträge:
    317
    Zustimmungen:
    0
    Ort:
    ~/
    Moin,

    ich hab ein kleines Problem mit ner output Sortierung von nem Bashscript.
    Folgendes Script:
    Code:
    makemenuetop() {
    PWD=($1)
    #makemenue $1
    for i in $(find ${PWD} -name 'index*'); do
    DIRNAME=(`dirname $i`)
    BASENAME=(`basename ${DIRNAME}`)
    Array1=( $(echo ${BASENAME}) )
    #makemenue ${PWD}
    #Array=( $(echo ${PWD}) )
    Array2=( $(echo ${PWD}) )
    Array3=( $(echo ${Array1}) $(echo ${Array2}) )
    echo -e ${Array1} |uniq
    echo ${Array2}
    #echo ${Array3}
    done
    }
    
    Ich weiß nicht hübsch, aber es funktioniert schon fast, der output sieht wie folgt aus:
    Code:
    basname1
    filename1.1
    basename1
    filename1.2
    basename1
    filename1.3
    basname2
    filename2.1
    basename2
    filename2.2
    usw.
    
    ich brauch es allerdings in der form
    basname1
    filename1.1
    filename1.2
    filename1.3
    basname2
    filename2.1
    filename2.2
    usw.

    Ich hoffe ihr versteht was ich meine und könnt mir weiterhelfen, mir sind irgendwie die ideen ausgegangen :(
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 tuxlover, 04.07.2010
    tuxlover

    tuxlover Der den Tux knuddelt

    Dabei seit:
    26.10.2005
    Beiträge:
    2.106
    Zustimmungen:
    0
    Ort:
    berlin
    dann wirst du wohl zwei schleifen brauchen ;) eine innere und eine äußere.

    die äußere durchläuft basename springt dann in die innere, wo es die filenames durchläuft.
     
  4. HBtux

    HBtux Linuxer

    Dabei seit:
    13.04.2010
    Beiträge:
    72
    Zustimmungen:
    0
    Ort:
    $HOME
    Ich habs mal auf die Art und Weise gelöst.....

    Code:
    [FONT="Courier New"]TMP_FILE=output.tmp
    > $TMP_FILE
    FS="°"
    
    while read AKT_ZEILE; do
    
    NUMERIK="`echo $AKT_ZEILE | tr -d [a-zA-Z]`"
    case $NUMERIK in
            *\.*)   NUMERIK="`echo $NUMERIK | tr . " "`" ;;
            *)      NUMERIK="$NUMERIK 0" ;;
    esac
    
    echo ${NUMERIK}${FS}${AKT_ZEILE} >> $TMP_FILE
    
    done < output.txt
    
    sort $TMP_FILE | cut -d${FS} -f2-[/FONT]
    
    Das ist die Datenbasis, wie von Dir vorgegeben... (output.txt)
    Code:
    [FONT="Courier New"]basname1
    filename1.1
    basename1
    filename1.2
    basename1
    filename1.3
    basname2
    filename2.1
    basename2
    filename2.2[/FONT]
    
    so sieht dann das TMP_FILE aus.....
    In diesem TMP-File kann nun anhand der Zahlen in den ersten beiden Feldern sortiert werden.....
    Code:
    [FONT="Courier New"]1 0°basname1
    1 1°filename1.1
    1 0°basename1
    1 2°filename1.2
    1 0°basename1
    1 3°filename1.3
    2 0°basname2
    2 1°filename2.1
    2 0°basename2
    2 2°filename2.2[/FONT]
    
    fertig sortiert und die Hilfszahlen am Anfrang der Zeile wieder gelöscht....
    Code:
    [FONT="Courier New"]basename1
    basename1
    basname1
    filename1.1
    filename1.2
    filename1.3
    basename2
    basname2
    filename2.1
    filename2.2[/FONT]
    
     
Thema:

Sortierungsproblem Bash

Die Seite wird geladen...

Sortierungsproblem Bash - Ähnliche Themen

  1. Bräuchte Hilfe bei Backupscript mittels Bash und cronjob

    Bräuchte Hilfe bei Backupscript mittels Bash und cronjob: Es soll für bestimmte Ordner Archivierung aller Dateien(Logfiles), die älter als 30 Tage sind machen. Am besten einmal täglich nachts irgendwann....
  2. 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...
  3. 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...
  4. Mit bash Skript bestimmte Werte aus Tabelle lesen

    Mit bash Skript bestimmte Werte aus Tabelle lesen: Hallo! Ich beschäftige mich erst seit Kurzem mit bash und bin deshalb noch nicht so fit darin. Und nun habe ich schon ein kleines Problem und...
  5. Bash: Geteiltes Fenster mit unterschiedlichen Funktionen

    Bash: Geteiltes Fenster mit unterschiedlichen Funktionen: Hallo Leute, ist es in Bash möglich, zwei Funktionen in zwei getrennten Teilen eines Terminalfensters ablaufen zu lassen? Da Bash die Befehle...