Bash: cut

Como su propio nombre indica, el comando cut tiene la característica de poder cortar caracteres y campos, con la posibilidad de usar delimitadores y otras opciones, para finalmente extraer las partes seleccionadas de cada fichero en la salida estándar.

El comando cut nos ofrece los siguientes argumentos:

-b, –bytes=LISTA       muestra solamente estos bytes
-c, –characters=LISTA  selecciona solamente estos caracteres
-d, –delimiter=DELIM   usa DELIM en vez de caracteres de tabulación para delimitar los campos
-f, –fields=LISTA selecciona solamente estos campos; también muestra cualquier línea que no tenga un carácter delimitador, a menos que se especifique la opción -s
-n (no tiene efecto)
–complement complementa el conjunto de bytes, caracteres o campos seleccionados.
-s, –only-delimited    no muestra las líneas que no contienen delimitadores
–output-delimiter=CADENA  utiliza CADENA como el delimitador del resultado. Por omisión se utiliza el
delimitador de la entrada
–help muestra esta ayuda y finaliza
–version informa de la versión y finaliza

Vamos a hacer unos ejemplos sencillos, saquemos un texto por pantalla:

$ echo "Esto es una prueba, 1 2 3, probando"
Esto es una prueba, 1 2 3, probando

Bien, utilizando como delimitador por ejemplo la coma, podemos dividir en 3 partes el texto, podemos mostar cada una de esas tres partes (fields) con la opción -f :

$ echo "Esto es una prueba, 1 2 3, probando"  | cut -d "," -f 1
Esto es una prueba
$ echo "Esto es una prueba, 1 2 3, probando"  | cut -d "," -f 2
 1 2 3
$ echo "Esto es una prueba, 1 2 3, probando"  | cut -d "," -f 3
 probando

¿Y si quisieramos sacar solamente unos caracteres en concreto? Usaremos el argumento -c:

$ echo "Esto es una prueba, 1 2 3, probando"  | cut  -c 1-4
Esto
$ echo "Esto es una prueba, 1 2 3, probando"  | cut  -c 6-8
es
$ echo "Esto es una prueba, 1 2 3, probando"  | cut  -c 9-12
una
$ echo "Esto es una prueba, 1 2 3, probando"  | cut  -c 14-18
rueba
$ echo "Esto es una prueba, 1 2 3, probando"  | cut  -c 13-18
prueba

http://rm-rf.es/unix-uso-del-comando-cut/

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s