linux command

sort

Linux Command – sort ใช้ในการจัดเรียงข้อมูล file ทีละบรรทัด

 

คำสั่ง

ตัวอย่าง file test

$ cat test
1,hello world
2,hi
4,how r u
6,see ya
3,what
7,bye

 

1. จัดเรียงข้อมูลตามตัวอักษร

sort <file>

$ sort test
1,hello world
2,hi
3,what
4,how r u
6,see ya
7,bye

 

2. จัดเรียงข้อมูลตามตัวอักษรแบบย้อนกลับ

sort -r <file>

$ sort -r test
7,bye
6,see ya
4,how r u
3,what
2,hi
1,hello world

 

3. จัดเรียงข้อมูลโดยใช้ field ที่กำหนดเป็น key

sort -t ‘<delimeter>’ -k<fieldnumber> <file>

$ sort -t ',' -k2 test
7,bye
1,hello world
2,hi
4,how r u
6,see ya
3,what

 

โครงสร้างคำสั่ง

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

 

รายละเอียด

เป็นคำสั่งที่ใช้ในการจัดเรียงข้อมูล file ทีละบรรทัด โดยมี option ดังนี้

  • -r  คือ เรียงย้อนกลับ
  • -n คือ เรียงโดยตัวเลข ไม่ใช่อักษร
  • -t คือ แบ่ง field ด้วยสัญลักษณ์
  • -k คือ field number

 

Option

 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

 

กลุ่มคำสั่ง

shuf(1), uniq(1)

 

Reference:

คำสั่ง Unix – Linux Command

Linux, Unix

 

Author: Suphakit Annoppornchai

Credit: https://saixiii.com

One Thought to “sort – Linux Command คำสั่งในการจัดเรียงข้อมูล file ทีละบรรทัด”

Leave a Reply