Com ordenar fitxers de text a Linux mitjançant l'ordre Sort

Com ordenar fitxers de text a Linux mitjançant l'ordre Sort

Linux us proporciona diverses utilitats que podeu utilitzar per processar fitxers de text. Ja sigui que vulgueu eliminar dades duplicades o ordenar el contingut dins d’un fitxer, les eines de línia de comandes de Linux tenen tot el que necessiteu.





En aquest article es mostrarà l’ordre sort i com es pot utilitzar per ordenar el contingut dins d’un fitxer de text i organitzar-lo en conseqüència.





Què és l'ordre de classificació?

Com s'ha esmentat anteriorment, l'ordre sort ajuda a l'usuari a organitzar el contingut d'un fitxer de text en un ordre concret. Hi ha diverses opcions disponibles que us permeten ordenar el fitxer segons el vostre desig. És un programa estàndard de Linux que pot ordenar un fitxer de text alfabèticament, numèricament, per columna i molt més, en ordre normal o invers.





Altres funcionalitats de l'ordre inclouen ignorar majúscules i minúscules mentre s'ordena, ordenar un fitxer per mes, ignorar espais en blanc en un fitxer i ordenar aleatòriament. Amb l’ordenació, també podeu comprovar si un fitxer ja està ordenat o no.

Com s'utilitza l'ordenació a Linux

Tot i que l’ordenació conté diversos mètodes i indicadors que podeu utilitzar, continua sent fàcil d’aprendre.



Sintaxi bàsica

La sintaxi bàsica d’utilitzar sort és:

sort filename

... on nom de l'arxiu és el camí d'accés absolut o relatiu del fitxer de text que voleu ordenar.





Per defecte, sort ordenarà el contingut segons els criteris següents:

  1. Les línies que comencen amb caràcters numèrics tenen la màxima prioritat.
  2. L'ordre ordenarà les línies alfabèticament, després d'ordenar les línies que comencin per números.
  3. Les línies que comencen amb minúscules precedeixen les línies que comencen amb el mateix caràcter en majúscules.

Penseu en un fitxer de text anomenat textfile.txt que conté la informació següent:





Per ordenar el fitxer mitjançant la configuració predeterminada:

sort textfile.txt

Sortida:

Creeu un fitxer de sortida nou

L'ordre sort no modifica el contingut del fitxer. Simplement envia el contingut ordenat a la sortida estàndard. Tanmateix, això no significa que aquest tipus no pugui crear un fitxer nou. Podeu utilitzar el fitxer -o marca per especificar el nom del fitxer ordenat i l'ordenació el crearà automàticament i n'afegirà el contingut.

com falsificar la vostra adreça IP
sort -o sortedfile filename

... on sortedfile és el nom del fitxer de sortida i nom de l'arxiu és el fitxer original que necessita ordenació.

Per ordenar textfile.txt i creeu un fitxer de sortida nou per al contingut:

sort -o sorted.txt textfile.txt

Sortida:

Ordeneu diversos fitxers

Per ordenar més d'un fitxer alhora, simplement passeu els noms de fitxer separats amb el fitxer Espai personatge.

sort textfile.txt textfile2.txt

Sortida:

Tingueu en compte que l’ordenació combinarà la sortida dels fitxers i els mostrarà junts al terminal.

Ordena inversament un fitxer

Si voleu invertir la disposició del contingut, utilitzeu el fitxer -r marca amb l'ordre per defecte. El -r a l'ordre següent significa Revers .

sort -r textfile.txt

Sortida:

Ordeneu un fitxer numèricament

Per ordenar un fitxer que contingui dades numèriques, utilitzeu el fitxer -n marca amb l'ordre. Per defecte, sort ordenarà les dades en ordre ascendent.

sort -n numbers.txt

Sortida:

Si voleu ordenar en ordre descendent, inverteu la disposició mitjançant el -r opció juntament amb el fitxer -n marca a l'ordre.

sort -rn numbers.txt

Sortida:

Ignorar majúscules i minúscules de caràcters mentre s’ordena

De manera predeterminada, l’ordenació té en compte les majúscules i minúscules del contingut. Les línies que comencen amb caràcters en minúscula precedeixen les línies que comencen amb la versió en majúscules del mateix caràcter. Per exemple, 'és un nen' precedirà 'És un nen'.

Si voleu que l'ordenació ignori les majúscules i minúscules, especifiqueu la -f o el --ignore-case marca com segueix:

sort -f textfile.txt
sort --ignore-case textfile.txt

Sortida:

Ordeneu un fitxer segons el mes

Utilitzant el -M , podeu modificar l'ordre del contingut d'un fitxer en funció dels noms del mes.

sort -M textfile2.txt

Sortida:

Ignora els espais en blanc principals

De vegades, el fitxer que voleu ordenar pot contenir espais o pestanyes. Per ignorar aquests caràcters en blanc, utilitzeu el fitxer -b bandera.

sort -b fileblanks.txt

Sortida:

Ordeneu un fitxer segons una columna

Si teniu un fitxer de text amb dades ordenades en columnes separades, podeu ordenar-lo segons el contingut d’una columna. Tot el que heu de fer és passar el número de columna juntament amb el fitxer -a bandera.

Penseu en un fitxer de text que contingui informació de fitxers amb diferents columnes. Per ordenar un fitxer anomenat output.txt segons la vuitena columna:

com esborrar el perfil de Xbox 360
sort -k8 -rn output.txt

Sortida:

Ordenació de canonades amb altres ordres

Fins i tot podeu utilitzar l’ordenació amb altres ordres de Linux per modificar la disposició de la sortida. Per exemple, per ordenar la sortida de l'ordre ls segons la mida dels fitxers:

ls -la | sort -k5 -rn

Sortida:

Ordeneu un fitxer aleatòriament

Podeu utilitzar el fitxer -R marca si voleu aleatoritzar l'ordre de les línies en un fitxer de text. Penseu en el fitxer textfile.txt :

sort -R textfile.txt

Sortida:

Ordeneu els números de versió en un fitxer

Si teniu un fitxer de text que conté informació de versió associada a un paquet, podeu ordenar-ne el contingut mitjançant -V o bé --version-sort bandera.

compta youtube com a xarxes socials
sort -V version.txt
sort --version-sort version.txt

Sortida:

Comproveu si està ordenat un fitxer

El -c flag us ajudarà a identificar fitxers que ja estan ordenats segons les opcions especificades. Si el contingut del fitxer està ordenat correctament, sort no mostrarà cap sortida.

Per comprovar si el fitxer textfile.txt està ordenat:

sort -c textfile.txt

Ara, ordenem el fitxer i desem la seva sortida en un fitxer nou anomenat sorted.txt . En emetre l'ordre següent:

sort -c sorted.txt

Sortida:

També podeu especificar diversos indicadors per comprovar la disposició del fitxer segons criteris particulars. Per exemple, per comprovar si el fitxer numbers.txt s'ordena en ordre descendent:

sort -c -rn numbers.txt

Veureu una sortida que indica que el fitxer no està ordenat correctament. Ordenem el fitxer i comprovem si el fitxer nou supera la prova.

sort -o sorted.txt -rn numbers.txt
sort -c -rn sorted.txt

Sortida:

Ordeneu el fitxer i elimineu els duplicats

El fitxer amb què esteu treballant pot contenir dades duplicades. Encara que es pot utilitzar l’ordre uniq per eliminar aquesta informació del fitxer, sort pot realitzar aquesta tasca per vosaltres. El -u o bé --únic la bandera és el que necessiteu.

Penseu en un fitxer anomenat duplicat.txt :

Per ordenar el fitxer i eliminar les dades repetides:

sort -u duplicate.txt

Sortida:

Ho podeu veure quan utilitzeu el fitxer -u flag, ordena només mostra línies diferents i les organitza segons els criteris especificats.

Treballar amb fitxers de text a Linux

Tot i que la potència dels editors de text de línia d'ordres és inigualable, podeu optar per un editor gràfic com ara gedit per modificar fàcilment el contingut d'un fitxer de text. A més, és una opció millor per a aquells que són nous a Linux i no poden fer front al terminal.

La millor manera de començar amb la línia d’ordres i Linux en general és practicant primer ordres bàsiques. Després de cobrir les utilitats fonamentals, avançar gradualment cap a ordres més complexes és probablement el millor enfocament.

Compartir Compartir Tweet Correu electrònic Full de trucs de referència d’ordres de Linux

Aquest senzill full de trucs us ajudarà a estar còmode amb el terminal de línia d’ordres de Linux en un tres i no res.

Llegiu a continuació
Temes relacionats
  • Linux
  • Gestió de fitxers
  • Linux
  • Ordres de Linux
Sobre l'autor Deepesh Sharma(79 articles publicats)

Deepesh és l'editor júnior de Linux a MUO. Escriu guies informatives a Linux, amb l'objectiu de proporcionar una experiència feliç a tots els nouvinguts. No estic segur de les pel·lícules, però si vols parlar de tecnologia, ell és el teu noi. Durant el temps lliure, el trobareu llegint llibres, escoltant diferents gèneres musicals o tocant la seva guitarra.

Més de Deepesh Sharma

Subscriu-te al nostre butlletí

Uniu-vos al nostre butlletí per obtenir consells tècnics, ressenyes, llibres electrònics gratuïts i ofertes exclusives.

Feu clic aquí per subscriure-us