`cut -d: -f5-` imprime líneas incluso si no tienen dos puntos


12

Suponiendo un archivo llamado "archivo" que contiene las líneas:

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

Si usamos el comando de corte con estas opciones obtenemos:

$ 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

En la última línea no se encontró el carácter de dos puntos, por lo que normalmente no debería haber tomado esa línea porque comenzamos con el quinto campo hasta el final de la línea.

Por qué es así ?

Respuestas:


16

Por defecto, cutcon la -fopción imprime cualquier línea que no contenga un carácter delimitador. Úselo -ssi no los quiere:

$ cut -d ":" -f 5- -s file
quux
five:six:seven
epsilon:zeta:eta:theta:iota:kappa:lambda:mu
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.