cut(1p)
NAMN
cut – klipper ut valda fält från varje rad i en fil
SYNOPSIS
cut -b lista [-n] [fil...]
cut -c lista [fil...]
cut -f lista [-d avgr ] [-s] [fil...]
BESKRIVNING
Verktyget cut ska klippa ut byte (flagga -b), tecken (flagga -c) eller teckenavgränsade fält (flagga -f) från varje rad i en eller flera filer, sammanfoga dem och skriva ut resultatet till standard ut.
FLAGGOR
cut ska följa riktlinjerna i POSIX.1-2017, Avsnitt 12.2, Utility Syntax Guidelines.
Argumentet lista till flaggorna -b, -c och -f ska vara en kommaseparerad eller blankstegsseparerad lista av positiva tal och intervall. Exempel:
- låg-hög — alla positioner från låg till hög
- -hög — från 1 till hög
- låg- — från låg till sista positionen
Element får upprepas och förekomma i valfri ordning, men output följer ordningen i indata. Dubbletter skrivs bara en gång.
Följande flaggor stöds:
-b lista Klipp baserat på bytepositioner. Varje vald byte skrivs ut, om inte -n är angiven. Det är inte ett fel att ange byte utanför radens längd.
-c lista Klipp baserat på tecken. Varje valt tecken skrivs ut. Det är inte ett fel att ange tecken som inte finns i raden.
-d avgr Ange avgränsartecken för fält (standard är tabbtecken).
-f lista Klipp baserat på fält separerade av avgränsartecken (se -d). Valda fält skrivs ut, åtskilda av ett avgränsartecken. Rader utan avgränsare skrivs som de är, om inte -s anges. Det är inte ett fel att välja fält som inte finns i raden.
-n Dela inte upp tecken. Används med -b för att justera gränser till hela tecken i multibyte-sammanhang. Detaljerad algoritm beskrivs i originalmanualen.
-s Undertryck rader utan avgränsartecken (används med -f).
OPERANDER
fil
Sökväg till en indatafil. Om ingen fil anges, eller om fil är '-', används standard in.
STDIN
Standard in används endast om inga filer anges eller om en fil är '-'. Se avsnittet INDATAFILER.
INDATAFILER
Indatafiler ska vara textfiler, men radernas längd får vara obegränsad.
MILJÖVARIABLER
Följande miljövariabler påverkar körningen:
LANG
Anger standardvärden för internationalisering.
LC_ALL
Åsidosätter alla andra internationaliseringsvariabler.
LC_CTYPE
Styr tolkning av tecken (t.ex. multibyte).
LC_MESSAGES
Styr språk i felmeddelanden.
NLSPATH
Anger var meddelandekataloger finns för LC_MESSAGES.
ASYNKRONA HÄNDELSER
Standard.
STDOUT
cut skriver ut sammanfogade byte, tecken eller fält i följande format:
"%s\n", <sammanfogade delar>
STDERR
Standardfel används endast för felmeddelanden.
UTDATAFILER
Inga.
UTFÖRLIG BESKRIVNING
Ingen.
AVSLUTNINGSSTATUS
0
– Alla indatafiler kunde behandlas
>0
– Ett fel uppstod
KONSEKVENSER AV FEL
Standard. Följande avsnitt är informativa.
TILLÄMPNINGSTIPS
- cut och fold kan användas för att dela filer med långa rader till textfiler.
- -n med -b möjliggör klippning på byte justerade till teckengränser. Exempel:
cut -b 1-500 -n fil > fil1
cut -b 501- -n fil > fil2
Ger exakt alla tecken i ursprungsfilen, uppdelade mellan fil1 och fil2 (båda behåller radbrytningar).
EXEMPEL
1,4,7 # första, fjärde och sjunde
1-3,8 # samma som 1,2,3,8
-5,10 # samma som 1–5,10
3- # från tredje till sista
Kommando:
cut -d : -f 1,6 /etc/passwd
Ger rader i format:
användarnamn:hemdatakatalog
cut -b 1-500 -n fil > fil1
cut -b 501- -n fil > fil2
paste -d "\0" fil1 fil2 > fil
PRINCIPER
- Historiska implementationer behandlade ibland inte backspace rätt i -c.
- POSIX förbjuder att avsluta om en fil saknas – istället sätts bara felstatus.
- cut sorterar aldrig om data baserat på listans ordning – exempel:
echo abcdefghi | cut -c6,2,4-7,1
Ger: `abdefg`
Ett förslag att införa -o (för att behålla listans ordning) avslogs.
FRAMTIDA ÄNDRINGAR
Inga planerade.
SE ÄVEN
POSIX.1-2017, Kapitel 8 (Miljövariabler), Avsnitt 12.2 (Syntax för verktyg)
COPYRIGHT
Delar av denna text är återgivna från IEEE Std 1003.1-2017 och The Open Group Base Specifications Issue 7, 2018 Edition. Ursprunglig standard: http://www.opengroup.org/unix/online.html Typografiska fel i denna återgivning kan ha införts under konverteringen. Rapportera fel till: https://www.kernel.org/doc/man-pages/reporting_bugs.html
Sidslut
Orginalhemsidan på Engelska https://man7.org/linux/man-pages/man1/cut.1p.html
Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på
https://www.linux.se/kontaka-linux-se/
Tack till Datorhjälp Bromma som har sponsrat Linux.se med webbhotell.