Cut

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

cut - Ta bort sektioner från varje rad i filer

Kommandot `cut` används för att ta bort sektioner från varje rad i en eller flera filer i Unix-liknande operativsystem.

Syntax

cut [ALTERNATIV]... [FIL]...

Beskrivning

Kommandot `cut` läser från en eller flera filer (eller standardingången) och tar bort sektioner från varje rad baserat på angivna kriterier. Resultatet skrivs till standardutgången.

Alternativ

Kommandot `cut` stöder flera alternativ som kan användas för att justera vilka sektioner som ska tas bort:

  • -b, --bytes=LISTA - Välj endast de angivna byte-positionerna.
  • -c, --characters=LISTA - Välj endast de angivna teckenpositionerna.
  • -d, --delimiter=DELIM - Använd angiven tecken som fältseparator (standard är tab).
  • -f, --fields=LISTA - Välj endast de angivna fälten; användas med -d.
  • -n - (gäller endast med -b) Tillåt inte dela multibyte-tecken.
  • --complement - Komplettera valen, visa fält eller byte som inte valdes.
  • --output-delimiter=STR - Använd STR som utdatafältseparator.
  • -s, --only-delimited - Visa inga rader som inte innehåller delimiter.
  • --help - Visa hjälpmeddelande och avsluta.
  • --version - Visa versionsinformation och avsluta.

Exempel

Här är några praktiska exempel som visar hur du kan använda `cut`-kommandot:

  • För att välja de första 5 tecknen av varje rad:

cut -c 1-5 fil.txt

  • För att välja fält 1 och 3 från en tab-separerad fil:

cut -f 1,3 fil.txt

  • För att använda ett kommatecken som fältseparator och välja fält 2:

cut -d ',' -f 2 fil.txt

  • För att välja byte 1 till 10 och 20 till 30:

cut -b 1-10,20-30 fil.txt

  • För att välja alla fält utom det tredje:

cut -d ',' -f 3 --complement fil.txt

Skillnader mellan macOS och Linux

Det finns några viktiga skillnader att tänka på när man använder `cut`-kommandot på macOS jämfört med Linux:

  • Tillgänglighet: `cut` är tillgängligt både på macOS och Linux, och de flesta alternativ fungerar likadant på båda plattformarna.
  • Alternativ: De flesta alternativ som finns på GNU-versionen av `cut` är också tillgängliga på macOS, men det är bra att konsultera `man`-sidan på din specifika plattform för att vara säker.
  • Textkodning: Hanteringen av textkodningar och multibyte-tecken kan skilja sig något mellan macOS och Linux, vilket kan påverka hur byte och tecken väljs.

Exempel på att använda `cut` på macOS:

  • För att välja de första 5 tecknen av varje rad:

cut -c 1-5 fil.txt

  • För att välja fält 1 och 3 från en tab-separerad fil:

cut -f 1,3 fil.txt

Det är alltid bra att konsultera `man`-sidan för `cut` på din specifika plattform för att se vilka alternativ och funktioner som är tillgängliga och hur de används.

Felsökning

Om du får ett felmeddelande när du använder `cut`, kontrollera följande:

  • Att du använder rätt syntax och alternativ för ditt specifika kommando.
  • Att filerna du försöker bearbeta faktiskt existerar och är läsbara.
  • Att de angivna fält- eller teckenpositionerna är giltiga för innehållet i filen.

Se även

  • awk - Ett språk och verktyg för textbehandling.
  • sed - En strömaditor för textmanipulering.
  • grep - Sök efter mönster i filer.
  • sort - Sortera rader av textfiler.

Källor