GNU/Linux >> Znalost Linux >  >> Linux

Třídění čísel s více desetinnými místy v bash

sort -g numbers

Bude to stačit. Podle manuálové stránky řazení -g je určeno pro numerické třídění:

-g, --general-numeric-sort

porovnejte podle obecné číselné hodnoty


Potřebujete -t. příznak pro specifikaci '.' jako váš oddělovač a vícenásobné specifikátory pozice kláves zpracovávají postupně delší/hlubší čísla. Pořád úplně přesně nechápu, jak to funguje, ale funguje to ...

 sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n numbers

nebo

 cat numbers | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n

Pro tento -V existuje speciální příznak pro čísla verzí

$ sort -V numbers

1.0
1.1
1.3
1.3.3
1.4-p1
1.6.1
1.11.4
1.15
2.2.2
2.2.10
2.4
2.4.6

ps. tato možnost je dostupná v GNU Coreutils a může chybět v jiných implementacích.


Linux
  1. Bash pole s příklady

  2. Bash If-Else prohlášení s příklady

  3. Třídění více klíčů pomocí Unixového řazení

  1. Řazení v bash

  2. Alias ​​s proměnnou v bash

  3. základní jméno s mezerami ve skriptu bash?

  1. Přidání časového razítka k názvu souboru s mv v BASH

  2. Bash:počkejte s časovým limitem

  3. Zaokrouhlování čísel s bc v Bash