Cut (Unix)
cut ist ein Unix-Kommando zur spaltenweisen Extraktion von 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 erste bekannte, öffentliche Version von cut war 1982 Bestandteil von Unix System III[1]. In den meisten Linux-Distributionen ist heute die Implementation des Pakets Gnu Core Utilities enthalten, diese wurde von David M. Ihnat, David MacKenzie, und 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 sich dann zum Beispiel die 4.–10. Zeichen jeder Zeile ausgeben:
:bar:ba :two:th ha:beta
während
% cut -d : -f 5- a.tst
die Zeilen in Felder einteilt, die durch Doppelpunkte separiert sind und unterschiedlich viele Zeichen enthalten können. Jeweils vom fünften solchen Feld an wird dann der Restinhalt der Zeile ausgegeben:
quux five:six:seven epsilon:zeta:eta:teta:iota:kappa:lambda:mu
Weblinks
cut
: cut out selected fields of each line of a file – Open Group Base Specificationcut(1)
: select portions of each line of a file – OpenBSD General Commands Manualcut(1)
: Teile jeder Zeile aus Dateien entfernen – Debian GNU/Linux Ausführbare Programme oder Shell-Befehle Handbuchseite- Cut out selected fields of each line of a file Betrachtung von
cut
und dessen historischem Hintergrund
Einzelnachweise
- ↑ Markus Schnalke: Cut out selected fields of each line of a file. In: freiesmagazin. (marmaro.de [PDF]).
- ↑ cut(1): remove sections from each line of files - Linux man page. Abgerufen am 28. März 2020.
Dateien | chgrp | chown | chmod | cp | dd | df | dir | dircolors | install | ln | ls | mkdir | mkfifo | mknod | mv | rm | rmdir | shred | sync | touch | vdir |
Text | awk | cat | cksum | comm | csplit | cut | expand | fmt | fold | head | join | md5sum | nl | od | paste | ptx | pr | sha1sum | sed | sort | split | sum | tac | tail | tr | tsort | unexpand | uniq | wc |
Shell | basename | chroot | date | dirname | du | echo | env | expr | factor | false | groups | hostid | id | link | logname | nice | nohup | pathchk | pinky | printenv | printf | pwd | readlink | seq | sleep | stat | stty | tee | test | true | tty | uname | unlink | users | who | whoami | yes |