Manpages

NAME

sort − sort lines of text files

SYNOPSIS

sort [OPTION]... [FILE]...
sort
[OPTION]... --files0-from=F

DESCRIPTION

Write sorted concatenation of all FILE(s) to standard output.

With no FILE, or when FILE is −, read standard input.

Mandatory arguments to long options are mandatory for short options too. Ordering options:
−b
, −−ignore−leading−blanks

ignore leading blanks

−d, −−dictionary−order

consider only blanks and alphanumeric characters

−f, −−ignore−case

fold lower case to upper case characters

−g, −−general−numeric−sort

compare according to general numerical value

−i, −−ignore−nonprinting

consider only printable characters

−M, −−month−sort

compare (unknown) < ’JAN’ < ... < ’DEC’

−h, −−human−numeric−sort

compare human readable numbers (e.g., 2K 1G)

−n, −−numeric−sort

compare according to string numerical value

−R, −−random−sort

shuffle, but group identical keys. See shuf(1)

−−random−source=FILE

get random bytes from FILE

−r, −−reverse

reverse the result of comparisons

−−sort=WORD

sort according to WORD: general−numeric −g, human−numeric −h, month −M, numeric −n, random −R, version −V

−V, −−version−sort

natural sort of (version) numbers within text

Other options:
−−batch−size
=NMERGE

merge at most NMERGE inputs at once; for more use temp files

−c, −−check, −−check=diagnose−first

check for sorted input; do not sort

−C, −−check=quiet, −−check=silent

like −c, but do not report first bad line

−−compress−program=PROG

compress temporaries with PROG; decompress them with PROG −d

−−debug

annotate the part of the line used to sort, and warn about questionable usage to stderr

−−files0−from=F

read input from the files specified by NUL−terminated names in file F; If F is − then read names from standard input

−k, −−key=KEYDEF

sort via a key; KEYDEF gives location and type

−m, −−merge

merge already sorted files; do not sort

−o, −−output=FILE

write result to FILE instead of standard output

−s, −−stable

stabilize sort by disabling last−resort comparison

−S, −−buffer−size=SIZE

use SIZE for main memory buffer

−t, −−field−separator=SEP

use SEP instead of non−blank to blank transition

−T, −−temporary−directory=DIR

use DIR for temporaries, not $TMPDIR or /tmp; multiple options specify multiple directories

−−parallel=N

change the number of sorts run concurrently to N

−u, −−unique

with −c, check for strict ordering; without −c, output only the first of an equal run

−z, −−zero−terminated

line delimiter is NUL, not newline

−−help

display this help and exit

−−version

output version information and exit

KEYDEF is F[.C][OPTS][,F[.C][OPTS]] for start and stop position, where F is a field number and C a character position in the field; both are origin 1, and the stop position defaults to the line’s end. If neither −t nor −b is in effect, characters in a field are counted from the beginning of the preceding whitespace. OPTS is one or more single−letter ordering options [bdfgiMhnRrV], which override global ordering options for that key. If no key is given, use the entire line as the key. Use −−debug to diagnose incorrect key usage.

SIZE may be followed by the following multiplicative suffixes: % 1% of memory, b 1, K 1024 (default), and so on for M, G, T, P, E, Z, Y.

*** WARNING *** The locale specified by the environment affects sort order. Set LC_ALL=C to get the traditional sort order that uses native byte values.

AUTHOR

Written by Mike Haertel and Paul Eggert.

REPORTING BUGS

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>;
Report sort translation bugs to <http://translationproject.org/team/>;

COPYRIGHT

Copyright © 2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>;.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

SEE ALSO

shuf(1), uniq(1)

Full documentation at: <http://www.gnu.org/software/coreutils/sort>;
or available locally via: info '(coreutils) sort invocation'

COMMENTS