GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Probleme bei der Verwendung von sort und comm

Per comm Handbuch, "Bevor `comm' verwendet werden kann, müssen die Eingabedateien unter Verwendung der durch die `LC_COLLATE'-Locale spezifizierten Sortierreihenfolge sortiert werden."

Und die sort manual:"Sofern nicht anders angegeben, verwenden alle Vergleiche die Zeichensortierfolge, die durch das Gebietsschema `LC_COLLATE' festgelegt ist.

Daher, und ein kurzer Test bestätigt, die LC_COLLATE Bestellen Sie comm erwartet wird von sort bereitgestellt Standardreihenfolge von , Wörterbuchsortierung.

sort kann Dateien auf verschiedene Arten sortieren:

  • -d :Wörterbuchreihenfolge - ignoriert alles außer Leerzeichen und alphanumerische Zeichen.
  • -g :Allgemein numerisch - Alpha, dann negative Zahlen, dann positiv.
  • -h :Für Menschen lesbar - negativ, alpha, positiv. n < nk = nK < nM < nG
  • -n :Numerisch - negativ, alpha, positiv. k ,M ,G , usw. sind nichts Besonderes.
  • -V :Version - positiv, Kappen, niedriger, negativ. 1 < 1.2 < 1.10
  • -f :Groß-/Kleinschreibung beachten.
  • -R :Zufällig - Zufallswiedergabe der Eingabe.
  • -r :Rückwärts - wird normalerweise mit einem von dghnV verwendet

Es gibt natürlich noch andere Optionen, aber diese werden Sie wahrscheinlich sehen oder brauchen.

Ihr Test zeigt, dass die Standardsortierreihenfolge wahrscheinlich -d ist , Wörterbuchreihenfolge.

  d   |   g   |   h   |   n   |   V 
------+-------+-------+-------+-------
  1   |  a    | -1G   | -10   |  1
 -1   |  A    | -1k   | -5    |  1G
  10  |  z    | -10   | -1    |  1g
 -10  |  Z    | -5    | -1g   |  1k
  1.10| -10   | -1    | -1G   |  1.2
  1.2 | -5    | -1g   | -1k   |  1.10
  1g  | -1    |  a    |  a    |  5
  1G  | -1g   |  A    |  A    |  10
 -1g  | -1G   |  z    |  z    |  A
 -1G  | -1k   |  Z    |  Z    |  Z
  1k  |  1    |  1    |  1    |  a
 -1k  |  1g   |  1g   |  1g   |  z
  5   |  1G   |  1.10 |  1G   | -1
 -5   |  1k   |  1.2  |  1k   | -1G
  a   |  1.10 |  5    |  1.10 | -1g
  A   |  1.2  |  10   |  1.2  | -1k
  z   |  5    |  1k   |  5    | -5
  Z   |  10   |  1G   |  10   | -10

Linux
  1. Uniq für Unicode-Text verwenden?

  2. Verwenden von „sed“ zum Suchen und Ersetzen?

  3. Wie sortiert man Dateien nach ihren Berechtigungen mit Ls?

  4. Sichern und Wiederherstellen der MySQL-Datenbank mit mysqlhotcopy

  5. Verwenden von kbhit() und getch() unter Linux

Bringen Sie podman unter Windows mit Linux zum Laufen

So synchronisieren Sie Dateien und Verzeichnisse mit Zaloha.sh

So vergrößern und verkleinern Sie Videos mit FFmpeg

Wie man den DD-Befehl verwendet und wie man ISO damit brennt

Verwenden von Bash Sort zum Sortieren von Dateien wie ein Boss

Häufige Serverprobleme und Lösungen