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.
Tabla de Contenidos
archivo de texto de referencia
Considere el siguiente archivo de texto de muestra.
$ sudo nano sample_file.txt
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
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
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
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]
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
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.