cut (Unix)
cut jest komendą uniksowego wiersza poleceń. Wykorzystuje się go do wyciągania części z każdej linii wejścia. Zazwyczaj polecenie to jest używane do wyciągania części z plików. Służą do tego sprecyzowane parametry:
- (
-b
) – dla określonych bajtów (ang. bytes) - (
-c
) – dla określonych znaków (ang. characters) - (
-f
) – dla określonych pól (ang. fields) - (
-d
) – separator (ang. delimiter). Znak po-d
jest separatorem. Standardowym separatorem jest: tab, ale mogą być też inne symbole np. dwukropek
Zasięg musi zawierać w każdym przypadku jeden z warunków N
, N-M,
N-
(od N
do końca linii), lub -M
(od rozpoczęcia linii do M
).
Przykład
Tworzymy plik nazwany plik_testowy zawierający treść:
foo:bar:baz:qux:quux one:two:three:four:five:six:seven alpha:beta:gamma:delta:epsilon:zeta:eta:teta:iota:kappa:lambda:mu
Aby otrzymać na wyjściu znaki od 4 do 10 z każdej linii wpisujemy:
% cut -c 4-10 plik_testowy
Na wyjściu otrzymujemy:
:bar:ba :two:th ha:beta
Aby otrzymać pola od piątego do końca każdej linii (w tym przypadku separatorem pól jest dwukropek) należy wpisać:
% cut -d : -f 5- plik_testowy
Na wyjściu otrzymujemy:
quux five:six:seven epsilon:zeta:eta:teta:iota:kappa:lambda:mu