Предполагая файл с именем «file», содержащий строки:
foo:bar:baz:qux:quux
one:two:three:four:five:six:seven
alpha:beta:gamma:delta:epsilon:zeta:eta:theta:iota:kappa:lambda:mu
the quick brown fox jumps over the lazy dog
Если мы используем команду cut с этими параметрами, мы получаем:
$ cut -d ":" -f 5- file
quux
five:six:seven
epsilon:zeta:eta:theta:iota:kappa:lambda:mu
the quick brown fox jumps over the lazy dog
В последней строке двоеточие символ не был найден, поэтому обычно он не должен занимать эту строку, потому что мы начинаем с 5-го поля до конца строки.
Почему это так?
По умолчанию cut
с опцией -f
печатает любую строку, которая не содержит символ разделителя. Используйте -s
, если вы не хотите их:
$ cut -d ":" -f 5- -s file
quux
five:six:seven
epsilon:zeta:eta:theta:iota:kappa:lambda:mu