sort

Liest Eingaben, sortiert Daten und schreibt die Ergebnisse auf den Bildschirm, in eine Datei oder auf ein anderes Gerät.

Syntax

sort [/r] [/+<N>] [/m <kilobytes>] [/l <locale>] [/rec <characters>] [[<drive1>:][<path1>]<filename1>] [/t [<drive2>:][<path2>]] [/o [<drive3>:][<path3>]<filename3>]

Parameters

Parameter Description
/r Umkehrt die Sortierreihenfolge (d. a. sortiert von Z zu A und von 9 bis 0).
/+<N> Gibt die Nummer der Zeichenposition an, an der die Sortierung bei jedem Vergleich beginnt. N kann eine beliebige gültige ganze Zahl sein.
/m <kilobytes> Gibt die Menge an Arbeitsspeicher an, die für die Sortierung in Kilobyte (KB) verwendet werden soll.
/l <Gebietsschema-> Überschreibt die Sortierreihenfolge von Zeichen, die durch das Standardgebietsschema des Systems definiert werden (d. a. die Sprache und das Land/die Region, die während der Installation ausgewählt sind).
/Rec <characters> Gibt die maximale Anzahl von Zeichen in einem Datensatz oder einer Zeile der Eingabedatei an (der Standardwert ist 4.096 und der Maximalwert beträgt 65.535).
[<drive1>:][<path1>]<filename1> Gibt die zu sortierende Datei an. Wenn kein Dateiname angegeben ist, wird die Standardeingabe sortiert. Die Angabe der Eingabedatei ist schneller als das Umleiten derselben Datei wie die Standardeingabe.
/t [<drive2>:][<path2>] Gibt den Pfad des Verzeichnisses an, in dem der Arbeitsspeicher des Sortierbefehls gespeichert werden soll, wenn die Daten nicht in den Hauptspeicher passen. Standardmäßig wird das temporäre Systemverzeichnis verwendet.
/o [<drive3>:][<path3>]<filename3> Gibt die Datei an, in der die sortierte Eingabe gespeichert werden soll. Wenn nicht angegeben, werden die Daten in die Standardausgabe geschrieben. Die Angabe der Ausgabedatei ist schneller als das Umleiten der Standardausgabe an dieselbe Datei.
/unique Gibt nur eindeutige Ergebnisse zurück.
/? Zeigt hilfe an der Eingabeaufforderung an.

Remarks

  • Standardmäßig beginnen Vergleiche mit dem ersten Zeichen jeder Zeile. Die /+ Befehlszeilenoption startet Vergleiche bei dem Zeichen, das durch N angegeben wird. Gibt z. B. /+3 an, dass jeder Vergleich mit dem dritten Zeichen jeder Zeile beginnen soll. Zeilen mit weniger als N Zeichen werden vor anderen Zeilen sortiert.

  • Der verwendete Arbeitsspeicher beträgt immer mindestens 160 KB. Wenn die Größe des Arbeitsspeichers angegeben ist, wird der genaue angegebene Betrag für die Sortierung verwendet (muss mindestens 160 KB groß sein), unabhängig davon, wie viel Hauptspeicher verfügbar ist.

  • Die maximale Standardspeichergröße, wenn keine Größe angegeben wird, beträgt 90% des verfügbaren Hauptspeichers, wenn sowohl die Eingabe als auch die Ausgabe Dateien sind, oder 45% des Hauptspeichers andernfalls. Die Standardeinstellung bietet in der Regel die beste Leistung.

  • Derzeit ist die einzige Alternative zum Standardgebietsschema das Gebietsschema C, das schneller als die Sortierung natürlicher Sprachen ist (es sortiert Zeichen nach ihren binären Codierungen).

  • Sie können das Pipe-Symbol (|) verwenden, um Eingabedaten von einem anderen Befehl an den Sortierbefehl weiterzuleiten oder um die sortierte Ausgabe an einen anderen Befehl zu leiten. Sie können Eingabe- und Ausgabedateien mithilfe von Umleitungssymbolen (< oder >) angeben. Es kann schneller und effizienter sein (insbesondere bei großen Dateien), die Eingabedatei direkt anzugeben (wie durch filename1 in der Befehlssyntax definiert) und dann die Ausgabedatei mit dem Parameter /o anzugeben.

  • Der Sortierbefehl unterscheidet nicht zwischen Groß- und Kleinbuchstaben und hat keine Begrenzung der Dateigröße.

  • Das Sortierprogramm verwendet die Sortierreihenfolgetabelle, die den Einstellungen für den Länder- / Regionscode und die Codepage entspricht. Zeichen, die größer als der ASCII-Code 127 sind, werden basierend auf den Informationen in der Country.sys-Datei oder in einer alternativen Datei sortiert, die mit dem Befehl country in der Datei Config.nt angegeben wird.

  • Wenn die Sortierung in die maximale Speichergröße passt (wie standardmäßig festgelegt oder durch den Parameter /m angegeben), wird die Sortierung in einem einzigen Durchgang durchgeführt. Andernfalls wird die Sortierung in zwei separaten Sortier- und Zusammenführungsdurchläufen ausgeführt, und die für beide Durchläufe verwendeten Speichermengen sind gleich. Wenn zwei Durchläufe ausgeführt werden, werden die teilweise sortierten Daten in einer temporären Datei auf dem Datenträger gespeichert. Wenn nicht genügend Arbeitsspeicher vorhanden ist, um die Sortierung in zwei Durchläufen durchzuführen, wird ein Laufzeitfehler ausgegeben. Wenn die Befehlszeilenoption /m verwendet wird, um mehr Arbeitsspeicher anzugeben, als tatsächlich verfügbar ist, kann es zu Leistungseinbußen oder einem Laufzeitfehler kommen.

Examples

  • Geben Sie Folgendes ein, um die Zeilen in einer Datei mit dem Namen expenses.txtin umgekehrter Reihenfolge zu sortieren und anzuzeigen:

    sort /r expenses.txt
    
  • Geben Sie Folgendes ein, um eine große Datei mit dem Namen maillist.txt nach dem Text Jones zu durchsuchen und die Ergebnisse der Suche mit dem senkrechten Strich (|) zu sortieren, um die Ausgabe eines Suchbefehls an den Sortierbefehl zu leiten:

    find Jones maillist.txt | sort
    

    Der Befehl erzeugt eine sortierte Liste von Zeilen, die den angegebenen Text enthalten.

  • Um Tastatureingaben zu sortieren und die Ergebnisse alphabetisch auf dem Bildschirm anzuzeigen, können Sie zunächst den Sortierbefehl ohne Parameter verwenden, indem Sie Folgendes eingeben:

    sort
    

    Geben Sie dann den Text ein, den Sie sortieren möchten, und drücken Sie die EINGABETASTE am Ende jeder Zeile. Wenn Sie mit der Eingabe von Text fertig sind, drücken Sie STRG+Z, und drücken Sie dann die EINGABETASTE. Der Sortierbefehl zeigt den von Ihnen eingegebenen Text alphabetisch sortiert an.