Elementi per esse ordenati sò delimitati in qualchi modu
Data in un testu di testu di Linux ponu esercizià cù u cumandru di classificatu finu à chì ogni elementu hè delimitata in qualchi modu. Spessu, a vinu hè utilizatu com'è u separatore per l'informazione delimitata.
Basic Rules for Sorting
U cumerciu di classificà ricunqueghja i linii in un schedariu di testu per preparalli numèricamente è alfabeticu. I regule predeterminate per u cumandru di classificatu sò:
- U testu chì accumenza cù un numeru pare avere testu chì accumenza cù una lettera; numeri più nummirusi prima.
- Testu chì cumencia cun una lettera chì vene in l'alfabetu prima chì a prima lettera di altri partiti di textuale hè sorte prima di testu chì accumenza cù una lettera chì pareva dopu in l'alfabetu.
- Quandu induve u testu di majuscule è casi minùscule di a listessa lettere, a stanza di minùscule hè stata prima.
Scacciate un testu di testu
Per sorte i linii in un schedariu delimitatu Linux, utilizate l' ordine generale cum'è stu:
$ sort -k2 test.txtchì dispune u schedariu "test.txt" sicondu i caratteri chi principianu à a seconda colonna (K2 riferisce à a seconda colonna). Assuming u cuntenutu di u cuntenutu di l'input hè:
1, Justin Timberlake, Titulu 545, Prezzo $ 7,30 2, Taylor Swift, Titulu 723, Prezzo $ 7,90 3, Mick Jagger, Titulu 610, Prezzo $ 7,90 4, Lady Gaga, Titulu 118, Prezzo $ 7,30 5, Johnny Cash, Titulu 482, Prezzo $ 6,50 6, Elvis Presley, Titulu 335, Prezzo $ 7,30 7, John Lennon, Titulu 271, Prezzo $ 7,90 8, Michael Jackson, Titulu 373, Prezzo $ 5,50Perchè a seconda colonna in questu esempiu contene prima è ultimi nomi, a distribuzione saldata hè urdinatu da a prima lettera di u primu nome di ogni individuu in a seconda columna-Elvis, John, Johnny, Justin, Lady, Michael, Mick, è Taylor , quì sottu:
6, Elvis Presley, Titulu 335, Prezzo $ 6,30 7, John Lennon, Titulu 271, Prezzo $ 7,90 5, Johnny Cash, Titulu 482, Prezzo $ 6,50 1, Justin Timberlake, Titulu 545, Prezzo $ 6,30 4, Lady Gaga, Titulu 118, Prezzo $ 6,30 8, Michael Jackson, Titulu 373, Prezzo $ 5,50 3, Mick Jagger, Titulu 610, Prezzo $ 7,90 2, Taylor Swift, Titulu 723, Prezzo $ 7,90Se sorte u schedariu cù -k3 (utilizendu u cuntenutu di linea cuntenutu à a colonna 3-a chjesa di u numeru Titulu), a sorsa hè:
4, Lady Gaga, Titulu 118, Prezzo $ 6,30 7, John Lennon, Titulu 271, Prezzo $ 7,90 6, Elvis Presley, Titulu 335, Prezzo $ 6,30 8, Michael Jackson, Titulu 373, Prezzo $ 5,50 5, Johnny Cash, Titulu 482, Prezzo $ 6,50 1, Justin Timberlake, Titulu 545, Prezzo $ 6,30 3, Mick Jagger, Titulu 610, Prezzo $ 7,90 2, Taylor Swift, Titulu 723, Prezzo $ 7,90è
$ sort -k4 test.txtpruduce una lista ordenata da prezzu:
8, Michael Jackson, Titulu 373, Prezzo $ 5,50 1, Justin Timberlake, Titulu 545, Prezzo $ 6,30 4, Lady Gaga, Titulu 118, Prezzo 6,30 $ 6, Elvis Presley, Titulu 335, Prezzo $ 6,30 5, Johnny Cash, Titulu 482, Prezzo $ 6,50 2, Taylor Swift, Titulu 723, Prezzo $ 7,90 3, Mick Jagger, Titulu 610, Prezzo $ 7,90 7, John Lennon, Titulu 271, Prezzo $ 7,90Invertisce una Sort
L'opció -r cambia a categurìa. Per esempiu, utilizendu i risultati supra:
$ sort -k4 -r test.txtpruduce:
7, John Lennon, Titulu 271, Prezzo $ 7,90 3, Mick Jagger, Titulu 610, Prezzo $ 7,90 2, Taylor Swift, Titulu 723, Prezzo $ 7,90 5, Johnny Cash, Titulu 482, Prezzo $ 6,50 6, Elvis Presley, Titulu 335, Prezzo $ 6,30 4, Lady Gaga, Titulu 118, Prezzo $ 6,30 1, Justin Timberlake, Titulu 545, Prezzo $ 6,30 8, Michael Jackson, Titulu 373, Prezzo $ 5,50Saving un File ordenatu
A categurìa di un schedariu ùn lasta micca. Per guardà a lista ordenata in un schedariu, utilizate l'operatore di redirect:
sort -k4 -r test.txt> test_new.txtinduve "test_new.txt" hè u novu schedariu.
Sorting a Stream Output
Pudete ancu applicà l'cumandimu cumuni à a pruduzzioni di un corrente, cum'è l'operatore di città:
$ ls -al | sort -r -n -k5Questu sorte u prughjettu di u cartulare di schedari generatu da l'ordine per ls di u grandore di scrittore, accuminciannu cù i schedari più grande. L'operatore -n ci spicifica numera numericamente in più di l'alfabbè.