Tutoriales

Cómo eliminar todos los espacios de un archivo de texto

Trabajar en una distribución de sistema operativo Linux le brinda una perspectiva única sobre cuán transformador puede ser el mundo de la computación. Por ejemplo, eliminar espacios en archivos de texto puede parecer una tarea tediosa a menos que esté utilizando Linux como su sistema operativo principal.

Los espacios no son solo horizontales como el espaciado de las palabras en este artículo u otros caracteres imprimibles. Los espacios también existen como espacio vertical entre líneas y/o párrafos. Entonces, ¿por qué eliminar espacios? La razón principal es limpiar el aspecto de su archivo de texto de destino.

archivo de texto de referencia

Considere el siguiente archivo de texto de muestra.

$ sudo nano sample_file.txt 
archivo con espacios

De acuerdo con la captura de pantalla anterior, obviamente podemos ver que el archivo de texto tiene síntomas de espacios verticales y horizontales. Podemos usar el comando gato más morir -n Opción para abrir este archivo en una vista numerada.

$ cat -n sample_file.txt
Mostrar archivo con números
Mostrar archivo con números

Los caracteres de espacio en blanco obvios en un archivo de texto incluyen espacios, tabulaciones y líneas nuevas. Para eliminar todos esos espacios, consideraremos la ayuda y el uso de tres comandos integrados de Linux.

Método 1: Usar el comando tr

Ese comando tr toma el archivo de texto anterior como entrada, traduce el contenido del archivo de texto, elimina los espacios y luego vuelve a escribir una salida sin espacios en el archivo.

Sin embargo, tenemos que proporcionar esos comando tr con requisitos de ejecución específicos, es decir, si eliminar espacios horizontales, espacios verticales o ambos.

Eliminar espacios horizontales en el archivo

Usaremos esos "[:blank:]" opción dibujar como parte de un comando, y luego ejecute el comando gato para imprimir el diseño final del archivo.

$ tr -d "[:blank:]" < sample_file.txt | cat -n
Eliminar espacios horizontales en el archivo
Eliminar espacios horizontales en el archivo

De acuerdo con el resultado anterior, hemos eliminado con éxito los espacios horizontales del archivo de texto en Linux.

Eliminar todos los espacios en el archivo

Ese "[:space:]" La opción se utiliza para eliminar espacios horizontales y verticales de un archivo de texto.

$ tr -d "[:space:]" < raw_file.txt | cat -n
Eliminar espacios en el archivo
Eliminar espacios en el archivo

Método 2: Usar el comando sed

Dado que el comando sed generalmente se implementa mediante expresiones regulares, podemos usarlo así:

$ sed 's/[[:blank:]]//g' sample_file.txt | cat -n               [Remove Horizontal Spaces]
$ sed ':a; N; s/[[:space:]]//g; ta' sample_file.txt | cat -n    [Remove All Spaces]
Eliminar espacios en el comando sed
Eliminar espacios en el comando sed

Método 2: Usar el comando awk

Este potente procesador de texto utiliza su secuencia de comandos similar a C y otras funciones y variables integradas para manipular el procesamiento de texto con flexibilidad.

lo usaremos función gsub de la siguiente manera para eliminar los espacios horizontales.

$ awk '{gsub(/[[:blank:]]/,""); print}' sample_file.txt | cat -n 
Eliminar espacios en Awk Command
Eliminar espacios en Awk Command

Para eliminar todos los espacios de un archivo de texto, hagamos la siguiente modificación al comando anterior:

$ awk -v ORS="" '{gsub(/[[:space:]]/,""); print}' sample_file.txt | cat -n

Con los tres enfoques de comandos de Linux discutidos anteriormente, eliminar espacios no deseados en sus archivos de texto en Linux no debería ser un problema.

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Botón volver arriba