Home > shell > Bash: Inhalt von Arrays sortieren

Bash: Inhalt von Arrays sortieren

Array Inhalte zu sortieren in der Bash ist nicht weiter schwer.

Das folgende Beispiel würde ein Array “numberArray” mit Zahlen absteigend sortieren.

numberArray=($(echo ${numberArray[*]} | tr ' ' '\n' | sort -r))

Das Array wird nach tr umgeleitet, dort werden alle Leerzeichen durch Zeilenumbrüche ersetzt damit sort das ganze sortieren kann. Was und wie man sortieren will hängt hauptsächlich von sort ab.

Kategorienshell Tags:
  1. white rotten rabbit
    19. August 2010, 12:05 | #1

    Danke für den Tipp!
    Es klappt übrigens nicht nur mit Arrays, die Zahlen beinhalten, sondern auch mit Arrays, welche Strings (beispielsweise Dateinamen) enthalten. Wenn man etwa mit find die Namen aller Dateien in einem bestimmten Verzeichnis in einem Array abspeichert, lässt sich dieses Array bequem mit dem oben angegebenen Beispiel sortieren.

  2. Bibliothekar
    19. August 2010, 13:48 | #2

    Stimmt, das sollte generell mit allem funktionieren was sort handhaben kann.

  1. Bisher keine Trackbacks