6-Year-Lifecycle-linux-kernel-lts-cycle

Linux y otros sistemas operativos tipo UNIX tienen muchas herramientas para procesar texto en la línea de comando. Sin estas herramientas (aquí encontrarás la lista completa de comandos de Linux), nos veríamos obligados a escribir el resultado de un comando y escribirlo en el siguiente para poder aislar los bits que realmente necesitamos. El comando CUT nos permite cortar las piezas que necesitamos para que podamos canalizarlas en los comandos.

El comando CUT, también parte de los requisitos de cumplimiento de POSIX, es muy útil para algunos casos diferentes. No es tan robusto como algunos de los otros comandos, pero es muy útil en sí mismo. CUT se usa para, como su nombre indica, cortar texto. Más comúnmente, creo, se usa para cortar información de tablas textuales, como un archivo CSV o la salida de ps.

¿Cómo usar el comando CUT en Linux?

La sintaxis general de CUT es la siguiente.

cut opción... [archivo]...

No es muy útil en esa forma, pero cubriremos algunas de las opciones que se usan comúnmente.

Primero, echaremos un vistazo a cortar texto de una tabla usando pestañas entre las columnas.

cut -f 1,5 -d ':'/etc/passwd

Este comando extraerá las columnas uno y cinco, los campos ID de usuario y descripción de usuario, del archivo /etc/passwd. Aquí hemos utilizado el indicador -f para indicar los campos que queremos. Esta opción acepta valores o rangos separados por comas en la forma de x-y, donde x es el límite inferior, e y el superior.

Además, puedes combinar estas opciones como se hace a continuación. La opción -d es para indicar el delimitador, o el separador, valor. Los diferentes archivos usan diferentes valores para esto. El archivo /etc/passwd usa dos puntos, pero un archivo csv usa comas, por lo que es muy útil poder especificar un delimitador que no sea el predeterminado de la pestaña.

cut -f 1-3,7 -d ':'/etc/passwd

Esto proporcionará los campos uno a tres, así como el séptimo.

NOTA: La salida de algunos programas no siempre es uniforme y algunas veces tendrá campos en blanco que harán que CUT se comporte inesperadamente. Un ejemplo de esto es usar espacios para relleno en lugar de caracteres de pestañas. Esto no es raro A veces puedes tratar esto canalizando la salida del comando a través de tr antes de CUT.

tr -s ''''

El comando tr es el comando de transposición. Te permite intercambiar fácilmente caracteres en un archivo, al igual que sed, pero no tan flexible. La opción -s (o -squeeze) del comando tr exprime todo el espacio en blanco en un único carácter de espacio. Esto es muy efectivo cuando se usa en combinación con CUT porque proporciona una delimitación mucho más consistente de datos tabulares.

Algunas veces deseas poder cambiar el delimitador de aquel usado en el archivo de entrada, y para eso se usa la opción -output-delimiter.

cut -f 1,5 -d ':' --output-delimiter=$'\t' /etc/passwd

Aquí hemos especificado la pestaña como el delimitador. Debido a que no podemos pasar fácilmente un carácter de tabulación (presionar la pestaña típicamente le dice a bash que intente completar automáticamente), usamos $ ‘\ t’ para pasar un carácter de tabulación. Esta secuencia le dice a bash que escape lo que está en las citas y \ t es la secuencia de escape estándar para un carácter de tabulación.

Y esos son los conceptos básicos de usar CUT. Hay algunas características más, pero no es probable que las uses en el trabajo diario.

 

Fuente: Original | maslinux

¿Quién está en línea?

Hay 27808 invitados y ningún miembro en línea