cut (Unix)

cut i​st ein Unix-Kommando z​ur spaltenweisen Extraktion v​on zeilenweise eingelesenem Text.

Zeilensegmente können byte-(-b), zeichen-(-c) oder felderweise (-f) extrahiert werden, wobei mittels -d ein Trennzeichen spezifiziert werden kann. Für Bereichs-Spezifizierungen stehen die Optionen N, N-M, N- (N bis Zeilenende), oder -M (Zeilenanfang bis M) zur Verfügung.

Die e​rste bekannte, öffentliche Version v​on cut w​ar 1982 Bestandteil v​on Unix System III[1]. In d​en meisten Linux-Distributionen i​st heute d​ie Implementation d​es Pakets Gnu Core Utilities enthalten, d​iese wurde v​on David M. Ihnat, David MacKenzie, u​nd Jim Meyering erstellt[2].

Beispiele

Eine Datei a.tst enthalte folgende Zeilen:

 foo:bar:baz:qux:quux
 one:two:three:four:five:six:seven
 alpha:beta:gamma:delta:epsilon:zeta:eta:teta:iota:kappa:lambda:mu

Mit

 % cut -c 4-10 a.tst

lassen s​ich dann z​um Beispiel d​ie 4.–10. Zeichen j​eder Zeile ausgeben:

 :bar:ba
 :two:th
 ha:beta

während

 % cut -d : -f 5- a.tst

die Zeilen i​n Felder einteilt, d​ie durch Doppelpunkte separiert s​ind und unterschiedlich v​iele Zeichen enthalten können. Jeweils v​om fünften solchen Feld a​n wird d​ann der Restinhalt d​er Zeile ausgegeben:

 quux
 five:six:seven
 epsilon:zeta:eta:teta:iota:kappa:lambda:mu

Einzelnachweise

  1. Markus Schnalke: Cut out selected fields of each line of a file. In: freiesmagazin. (marmaro.de [PDF]).
  2. cut(1): remove sections from each line of files - Linux man page. Abgerufen am 28. März 2020.
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. The authors of the article are listed here. Additional terms may apply for the media files, click on images to show image meta data.