Mga Paggamit sa Linux Sort Command

Ang mga butang nga kinahanglan isunodon kinahanglanon sa usa ka paagi

Ang datos sa usa ka file sa teksto sa Linux mahimong isunod sa matang nga mando basta ang matag elemento mapugngan sa usa ka paagi. Kasagaran, ang comma gigamit ingon nga separator alang sa delimited nga impormasyon.

Basic Rules for Sorting

Ang matang nga command nag-usab sa mga linya diha sa usa ka file sa teksto aron sa pag-sunod niini sa numerikal ug alpabeto. Ang default rules alang sa sort command mao ang:

Pagpahimutang sa usa ka File sa Teksto

Aron masabtan ang mga linya sa delimited Linux file, imong gamiton ang sort command sama niini:

$ sort -k2 test.txt

nga nag-ingon ang file "test.txt" sumala sa mga karakter nga magsugod sa ikaduhang kolum (k2 nagpasabut sa ikaduhang kolum). Pag-asumer sa input file content mao ang:

1, Justin Timberlake, Titulo 545, Presyo $ 7.30 2, Taylor Swift, Titulo 723, Presyo $ 7.90 3, Mick Jagger, Titulo 610, Presyo $ 7.90 4, Lady Gaga, Titulo 118, Presyo $ 7.30 5, Johnny Cash, Title 482, Presyo $ 6.50 6, Elvis Presley, Titulo 335, Presyo $ 7.30 7, John Lennon, Titulo 271, Presyo $ 7.90 8, Michael Jackson, Titulo 373, Presyo $ 5.50

Tungod kay ang ikaduha nga kolum niini nga panig-ingnan naglangkob sa una ug katapusang mga ngalan, ang gihan-ay nga output gihikay sa unang letra sa unang ngalan sa matag indibidwal sa ikaduhang kolum-Elvis, John, Johnny, Justin, Lady, Michael, Mick, ug Taylor , sama sa gipakita sa ubos:

6, Elvis Presley, Titulo 335, Presyo $ 6.30 7, John Lennon, Titulo 271, Presyo $ 7.90 5, Johnny Cash, Titulo 482, Presyo $ 6.50 1, Justin Timberlake, Titulo 545, Presyo $ 6.30 4, Lady Gaga, Titulo 118, Presyo $ 6.30 8, Michael Jackson, Titulo 373, Presyo $ 5.50 3, Mick Jagger, Titulo 610, Presyo $ 7.90 2, Taylor Swift, Titulo 723, Presyo $ 7.90

Kon imong isukip ang file gamit ang -k3 (gamit ang sulod sa linya nagsugod sa kolum 3-ang kantidad sa numero sa Title), ang output mao ang:

4, Lady Gaga, Titulo 118, Presyo $ 6.30 7, John Lennon, Titulo 271, Presyo $ 7.90 6, Elvis Presley, Titulo 335, Presyo $ 6.30 8, Michael Jackson, Titulo 373, Presyo $ 5.50 5, Johnny Cash, Titulo 482, Presyo $ 6.50 1, Justin Timberlake, Titulo 545, Presyo $ 6.30 3, Mick Jagger, Titulo 610, Presyo $ 7.90 2, Taylor Swift, Titulo 723, Presyo $ 7.90

ug

$ sort -k4 test.txt

nagahatag og usa ka lista nga gisunod sa bili:

$ 6.30 4, Lady Gaga, Titulo 118, Presyo $ 6.30 6, Elvis Presley, Titulo 335, Presyo $ 6.30 5, Johnny Cash, Titulo 482, Presyo $ 6.50 8, Michael Jackson, Titulo 373, Presyo $ 5.50 1, Justin Timberlake, 2, Taylor Swift, Titulo 723, Presyo $ 7.90 3, Mick Jagger, Titulo 610, Presyo $ 7.90 7, John Lennon, Titulo 271, Presyo $ 7.90

Pagbalibad sa usa ka matang

Ang -r nga kapilian nagbali sa pagkahan-ay. Pananglitan, gamit ang mga resulta sa ibabaw:

$ sort -k4 -r test.txt

abot:

7, John Lennon, Titulo 271, Presyo $ 7.90 3, Mick Jagger, Titulo 610, Presyo $ 7.90 2, Taylor Swift, Titulo 723, Presyo $ 7.90 5, Johnny Cash, Titulo 482, Presyo $ 6.50 6, Elvis Presley, Titulo 335, Presyo $ 6.30 4, Lady Gaga, Titulo 118, Presyo $ 6.30 1, Justin Timberlake, Titulo 545, Presyo $ 6.30 8, Michael Jackson, Titulo 373, Presyo $ 5.50

Pagluwas sa usa ka File nga Gihan-ay

Ang pagklasipikar sa usa ka file dili makaluwas niini. Aron maluwas ang gi-lista nga listahan sa usa ka file, imong gamiton ang redirect operator:

matang -k4 -r test.txt> test_new.txt

diin ang "test_new.txt" mao ang bag-ong file.

Pag-sort sa usa ka Stream Output

Mahimo usab nimo i-apply ang matang nga command sa output sa usa ka sapa, sama sa pipe operator:

$ ls -al | matang -r -n -k5

Kini nag-ingon sa output sa file listing nga gimugna sa ls command pinaagi sa file size, nagsugod sa kinadak-ang mga file. Ang -n operator nagpakita sa numeric sorting kay sa alpabetiko.