Linux ger dig flera verktyg som du kan använda för att bearbeta textfiler. Oavsett om du vill ta bort dubblettdata eller sortera innehållet i en fil, har Linux-kommandoradsverktyg allt du behöver.
Den här artikeln kommer att visa sorteringskommandot och hur du kan använda det för att sortera innehållet i en textfil och ordna det därefter.
Vad är sorteringskommandot?
Som nämnts ovan hjälper sorteringskommandot en användare att ordna innehållet i en textfil i en viss ordning. Det finns flera alternativ som gör att du kan sortera filen efter dina önskemål. Det är ett standard Linux -program som kan sortera en textfil alfabetiskt, numeriskt, efter kolumn och mer i antingen normal eller omvänd ordning.
Andra funktioner i kommandot inkluderar att ignorera teckenfall under sortering, sortera en fil efter månad, ignorera ämnen i en fil och slumpmässig sortering. Med hjälp av sortering kan du också kontrollera om en fil redan är sorterad eller inte.
Hur man använder sort i Linux
Även om sortering innehåller flera metoder och flaggor som du kan använda, är det fortfarande lätt att lära sig.
Grundläggande syntax
Den grundläggande syntaxen för att använda sort är:
sort filename
...var filnamn är den absoluta eller relativa sökvägen till textfilen som du vill sortera.
Som standard ordnar sorteringen innehållet enligt följande kriterier:
- Rader som börjar med numeriska tecken har högsta prioritet.
- Kommandot sorterar raderna alfabetiskt efter att ha sorterat raderna som börjar med siffror.
- Rader som börjar med små bokstäver före raderna som börjar med samma tecken i versaler.
Tänk på en textfil som heter textfil.txt som innehåller följande information:
Så här sorterar du filen med standardkonfiguration:
sort textfile.txt
Produktion:
Skapa en ny utdatafil
Sorteringskommandot ändrar inte innehållet i filen. Det skickar helt enkelt det sorterade innehållet till standardutmatningen. Det betyder dock inte att den typen inte kan skapa en ny fil. Du kan använda -eller flagga för att ange namnet på den sorterade filen och sorteringen skapar filen automatiskt åt dig och lägger till innehållet.
var kan jag se gratis filmer utan registrering
sort -o sortedfile filename
...var sorterad fil är namnet på utdatafilen och filnamn är den ursprungliga filen som behöver sorteras.
Att sortera textfil.txt och skapa en ny utdatafil för innehållet:
sort -o sorted.txt textfile.txt
Produktion:
Sortera flera filer
För att sortera mer än en fil på en gång, skicka bara filnamnen åtskilda med Plats karaktär.
sort textfile.txt textfile2.txt
Produktion:
Observera att sortering kommer att slå samman utdata från filerna och visa dem tillsammans i terminalen.
Omvänd sortera en fil
Om du vill ändra innehållet i innehållet använder du -r flagga med standardkommandot. De -r i följande kommando står för Omvänd .
sort -r textfile.txt
Produktion:
Sortera en fil numeriskt
Om du vill sortera en fil som innehåller numerisk data använder du -n flagga med kommandot. Som standard ordnar sorteringen data i stigande ordning.
sort -n numbers.txt
Produktion:
Om du vill sortera i fallande ordning, gör om ordningen med hjälp av -r alternativet tillsammans med -n flagga i kommandot.
sort -rn numbers.txt
Produktion:
Ignorera teckenfodral under sorteringen
Som standard tar sorteringen hänsyn till innehållets teckenstorlek. Rader som börjar med små bokstäver föregår rader som börjar med versal av samma tecken. Till exempel kommer 'han är en pojke' före 'Han är en pojke'.
Om du vill att sorteringen ska ignorera bokstäverna anger du -f eller den --ignorera fall flagga enligt följande:
sort -f textfile.txt
sort --ignore-case textfile.txt
Produktion:
Sortera en fil baserat på månad
Använda -M flagga, kan du ändra ordningen på filens innehåll baserat på månadsnamn.
sort -M textfile2.txt
Produktion:
Ignorera ledande ämnen
Ibland kan filen som du vill sortera innehålla mellanslag eller flikar. För att ignorera sådana tomma tecken, använd -b flagga.
sort -b fileblanks.txt
Produktion:
Sortera en fil enligt en kolumn
Om du har en textfil med data ordnade i separata kolumner kan du sortera filen efter innehållet i en kolumn. Allt du behöver göra är att skicka kolumnnumret tillsammans med -till flagga.
Tänk på en textfil som innehåller filinformation med olika kolumner. För att sortera en fil med namnet output.txt enligt den åttonde kolumnen:
bästa stället att köpa elektronik på nätet
sort -k8 -rn output.txt
Produktion:
Rör sortera med andra kommandon
Du kan till och med använda sortera med andra Linux -kommandon för att ändra arrangemanget av utdata. Till exempel för att sortera utdata från kommandot ls beroende på filernas storlek:
ls -la | sort -k5 -rn
Produktion:
Sortera en fil slumpmässigt
Du kan använda -R flagga om du vill slumpmässigt ordna raderna i en textfil. Tänk på filen textfil.txt :
sort -R textfile.txt
Produktion:
Sortera versionsnummer i en fil
Om du har en textfil som innehåller versionsinformation kopplad till ett paket kan du sortera dess innehåll med -V eller --versionssort flagga.
visa telefonskärm på pc via usb
sort -V version.txt
sort --version-sort version.txt
Produktion:
Kontrollera om en fil är sorterad
De -c flag hjälper dig att identifiera filer som redan är sorterade enligt de angivna alternativen. Om innehållet i filen är ordentligt sorterat kommer ingen utdata att visas.
För att kontrollera om filen textfil.txt är sorterat:
sort -c textfile.txt
Låt oss nu sortera filen och spara dess utdata till en ny fil med namnet sorterad.txt . Vid utfärdande av följande kommando:
sort -c sorted.txt
Produktion:
Du kan också ange olika flaggor för att kontrollera ordningen av filen enligt särskilda kriterier. Till exempel för att kontrollera om filen numbers.txt sorteras i fallande ordning:
sort -c -rn numbers.txt
Du kommer att se en utdata som anger att filen inte är ordentligt sorterad. Låt oss sortera filen och kontrollera om den nya filen klarar testet.
sort -o sorted.txt -rn numbers.txt
sort -c -rn sorted.txt
Produktion:
Sortera filen och ta bort dubbletter
Filen som du arbetar med kan innehålla dubblettdata. Även om du kan använda kommandot uniq för att ta bort sådan information från filen kan sort utföra denna uppgift åt dig. De -u eller --unik flagga är vad du behöver.
Tänk på en fil med namnet duplicate.txt :
Så här sorterar du filen och tar bort upprepade data:
sort -u duplicate.txt
Produktion:
Det kan du se när du använder -u flagga, sortering visar bara distinkta linjer och ordnar dem enligt de angivna kriterierna.
Arbeta med textfiler i Linux
Även om kraften hos kommandorads-textredigerare är oöverträffad kan du fortfarande välja en grafisk redigerare som gedit för att enkelt ändra innehållet i en textfil. Det är också ett bättre val för dem som är nya på Linux och inte kan hantera terminalen.
Det bästa sättet att börja med kommandoraden och Linux i allmänhet är genom att öva på grundläggande kommandon först. Efter att ha täckt de grundläggande verktygen är det förmodligen det bästa tillvägagångssättet att gradvis gå vidare mot mer komplexa kommandon.
Dela med sig Dela med sig Tweet E-post Linux Commands Reference Cheat SheetDetta enkla fuskblad hjälper dig att bli bekväm med Linux -kommandoradsterminalen på nolltid.
Läs Nästa Relaterade ämnen- Linux
- Filhantering
- Linux
- Linux -kommandon
Deepesh är Junior Editor för Linux på MUO. Han skriver informationsguider på Linux, i syfte att ge alla nykomlingar en lycklig upplevelse. Osäker på filmer, men om du vill prata om teknik är han din kille. På fritiden kan du hitta honom läsa böcker, lyssna på olika musikgenrer eller spela gitarr.
Mer från Deepesh SharmaPrenumerera på vårt nyhetsbrev
Gå med i vårt nyhetsbrev för tekniska tips, recensioner, gratis e -böcker och exklusiva erbjudanden!
Klicka här för att prenumerera