Gumagamit ng Linux Sort Order

Ang mga bagay na dapat ayusin ay dapat na delimited sa ilang mga paraan

Ang data sa isang file na teksto ng Linux ay maaaring pinagsunod-sunod sa uri ng utos hangga't ang bawat sangkap ay binabawasan sa ilang mga paraan. Kadalasan, ang koma ay ginagamit bilang separator para sa delimited na impormasyon.

Mga Pangunahing Batas para sa Pag-uuri

Ang pag-uuri ng uri ay nagbabago ng mga linya sa isang tekstong file upang i-uri-uriin ang mga ito ayon sa bilang at ayon sa alpabeto. Ang mga default na panuntunan para sa uri ng command ay:

Pag-uuri ng isang Text File

Upang mai-uri-uriin ang mga linya sa delimited na file ng Linux, gagamitin mo ang sort command tulad nito:

$ sort -k2 test.txt

kung anong uri ang file na "test.txt" ayon sa mga character na nagsisimula sa ikalawang haligi (k2 ay tumutukoy sa pangalawang haligi). Ipagpapalagay na ang input file na nilalaman ay:

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

Dahil ang pangalawang haligi sa halimbawang ito ay naglalaman ng una at huling mga pangalan, ang inayos na output ay isinaayos ng unang titik ng unang pangalan ng bawat indibidwal sa pangalawang haligi-Elvis, John, Johnny, Justin, Lady, Michael, Mick, at Taylor , tulad ng ipinapakita sa ibaba:

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

Kung isinasaayos mo ang file na may -k3 (gamit ang mga nilalaman ng linya na nagsisimula sa haligi 3-ang haligi ng Title number), ang output ay:

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

at

$ sort -k4 test.txt

Gumagawa ng listahan na pinagsunod-sunod ayon sa presyo:

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

Pagbabaligtad ng Pag-uuri

Binabago ng pagpipilian -r ang pag-uuri. Halimbawa, gamit ang mga resulta sa itaas:

$ sort -k4 -r test.txt

magbubunga:

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

Sine-save ang isang File na Inayos

Ang pag-aayos ng isang file ay hindi i-save ito. Upang i-save ang pinagsunod-sunod na listahan sa isang file, gagamitin mo ang redirect operator:

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

kung saan ang "test_new.txt" ay ang bagong file.

Pag-aayos ng Stream Output

Maaari mo ring ilapat ang uri ng command sa output ng isang stream, tulad ng operator ng pipe:

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

Ito ang uri ng output ng listahan ng file na nabuo sa pamamagitan ng command ng ls sa pamamagitan ng sukat ng file, na nagsisimula sa mga pinakamalaking file. Tinutukoy ng operator ng -n ang numerong pag-uuri sa halip na alpabeto.