Trece herramientas útiles para trabajar con texto en la línea de comandos

Las distribuciones GNU / Linux incluyen una gran cantidad de programas para manejar texto, la mayoría de los cuales son proporcionados por las utilidades principales de GNU. Existe una cierta curva de aprendizaje, pero estas utilidades pueden resultar muy útiles y eficientes cuando se usan correctamente.

Aquí hay trece poderosas herramientas de manipulación de texto que todo usuario de la línea de comandos debería conocer.

1. gato

Cat fue diseñado para estafargatoenate, pero se utiliza con mayor frecuencia para mostrar un solo archivo. Sin argumentos, cat lee la entrada estándar hasta Ctrl + re se presiona (desde el terminal o desde otra salida de programa si se usa una tubería). La entrada estándar también se puede especificar explícitamente con un -.

Cat tiene varias opciones útiles, en particular:

  • -A imprime “$” al final de cada línea y muestra los caracteres que no se imprimen utilizando la notación de intercalación.
  • -n numera todas las líneas.
  • -b líneas de números que no están en blanco.
  • -s reduce una serie de líneas en blanco a una sola línea en blanco.

En el siguiente ejemplo, estamos concatenando y numerando el contenido de archivo1, entrada estándar y archivo3.

Herramientas de texto Linux Cat

2. ordenar

Como sugiere su nombre, sort ordena el contenido del archivo alfabéticamente y numéricamente.

Ordenar herramientas de texto de Linux

3. uniq

Uniq toma un archivo ordenado y elimina las líneas duplicadas. A menudo está encadenado con sort en un solo comando.

Herramientas de texto Linux Uniq

4. com

Comm se utiliza para comparar dos archivos ordenados, línea por línea. Genera tres columnas: las dos primeras columnas contienen líneas exclusivas del primer y segundo archivo respectivamente, y la tercera muestra las que se encuentran en ambos archivos.

Comunicación de herramientas de texto de Linux

5. cortar

Cortar se utiliza para recuperar secciones específicas de líneas, basadas en caracteres, campos o bytes. Puede leer desde un archivo o desde una entrada estándar si no se especifica ningún archivo.

Cortar por posición de personaje

los -c La opción especifica la posición de un solo carácter o uno o más rangos de caracteres.

Por ejemplo:

  • -c 3: el 3er carácter.
  • -c 3-5: del 3º al 5º carácter.
  • -c -5 o -c 1-5: del 1º al 5º carácter.
  • -c 5-: desde el quinto carácter hasta el final de la línea.
  • -c 3,5-7: el 3º y del 5º al 7º carácter.
Herramientas de texto de Linux Cut Char

Cortando por campo

Los campos están separados por un delimitador que consta de un solo carácter, que se especifica con el -d opción. los -f La opción selecciona una posición de campo o uno o más rangos de campos usando el mismo formato que el anterior.

Campo de corte de herramientas de texto de Linux

6. dos2unix

GNU / Linux y Unix suelen terminar las líneas de texto con un salto de línea (LF), mientras que Windows usa retorno de carro y salto de línea (CRLF). Pueden surgir problemas de compatibilidad al manejar texto CRLF en Linux, que es donde entra en juego dos2unix. Convierte terminadores CRLF a LF.

En el siguiente ejemplo, el file El comando se usa para verificar el formato de texto antes y después de usar dos2unix.

Herramientas de texto Linux Dos2unix

7. doblar

Para que las líneas largas de texto sean más fáciles de leer y manejar, puede usar fold, que ajusta las líneas a un ancho especificado.

Fold coincide estrictamente con el ancho especificado por defecto, dividiendo las palabras cuando sea necesario.

Pliegue de las herramientas de texto de Linux

Si no desea romper palabras, puede utilizar el -s Opción de romper en espacios.

Espacios de plegado de herramientas de texto de Linux

8. iconv

Esta herramienta convierte texto de una codificación a otra, lo cual es muy útil cuando se trata de codificaciones inusuales.

  • “Input_encoding” es la codificación desde la que está convirtiendo.
  • “Output_encoding” es la codificación a la que está convirtiendo.
  • “Output_file” es el nombre de archivo en el que se guardará iconv.
  • “Input_file” es el nombre de archivo que iconv leerá.

Nota: puede enumerar las codificaciones disponibles con iconv -l

9. sed

sed es un potente y flexible stream editor, más comúnmente utilizado para buscar y reemplazar cadenas con la siguiente sintaxis.

El siguiente comando leerá desde el archivo especificado (o entrada estándar), reemplazando las partes del texto que coinciden con el patrón de expresión regular con la cadena de reemplazo y enviando el resultado al terminal.

Para modificar el archivo original en su lugar, puede utilizar el -i bandera.

Sed de herramientas de texto de Linux

10. WC

los wc La utilidad imprime el número de bytes, caracteres, palabras o líneas de un archivo.

Herramientas de texto de Linux Wc

11. dividir

Puedes usar split para dividir un archivo en archivos más pequeños, por número de líneas, por tamaño o por un número específico de archivos.

División por número de líneas

Líneas de división de herramientas de texto de Linux

Dividir por bytes

Bytes divididos de herramientas de texto de Linux

Dividir en un número específico de archivos

Número de división de herramientas de texto de Linux

12. tac

Tac, que es cat al revés, hace exactamente eso: muestra archivos con las líneas en orden inverso.

Herramientas de texto de Linux Tac

13. tr

La herramienta tr se utiliza para traducir o eliminar conjuntos de caracteres.

Un conjunto de caracteres suele ser una cadena o rangos de caracteres. Por ejemplo:

  • “AZ”: todas las letras mayúsculas
  • “A-z0-9”: letras minúsculas y dígitos
  • “norte[:punct:]”: Caracteres de nueva línea y puntuación

Referirse a tr página de manual para más detalles.

Para traducir un conjunto a otro, utilice la siguiente sintaxis:

Por ejemplo, para reemplazar los caracteres en minúscula con su equivalente en mayúsculas, puede usar lo siguiente:

Herramientas de texto de Linux Tr

Para eliminar un conjunto de caracteres, utilice el -d bandera.

Herramientas de texto de Linux Tr D

Para eliminar el complemento de un conjunto de caracteres (es decir, todo excepto el conjunto), utilice -dc.

Herramientas de texto Linux Tr Dc

Conclusión

Hay mucho que aprender cuando se trata de la línea de comandos de Linux. Con suerte, los comandos anteriores pueden ayudarlo a manejar mejor el texto en la línea de comandos.

¿Es útil este artículo?

Puedes compartirlo con algun conocido(a) que le pueda interesar

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *