Por padrão, cut
com a opção -f
imprime qualquer linha que não contenha um caractere delimitador. Use -s
se você não quiser:
$ cut -d ":" -f 5- -s file
quux
five:six:seven
epsilon:zeta:eta:theta:iota:kappa:lambda:mu
Supondo um arquivo chamado "arquivo" contendo as linhas:
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
Se usarmos o comando cut com essas opções, obteremos:
$ 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
Na última linha, o caractere de cólon não foi encontrado normalmente, não deveria ter usado essa linha porque começamos com o 5º campo até o final da linha.
Por que isso acontece?
Por padrão, cut
com a opção -f
imprime qualquer linha que não contenha um caractere delimitador. Use -s
se você não quiser:
$ cut -d ":" -f 5- -s file
quux
five:six:seven
epsilon:zeta:eta:theta:iota:kappa:lambda:mu
Tags command-line cut-command