6 Métodos sencillos para eliminar líneas en blanco en Bash en Linux

Cómo eliminar líneas vacías en Bash en Linux como un profesional

¿Te preguntas cómo limpiar tus scripts Bash en Linux? Echa un vistazo a nuestra guía para descubrir los 6 mejores métodos fáciles sobre cómo eliminar líneas en blanco / vacías en Bash en Linux

Descarga | Win Descarga | Mac

Cualquier usuario de Linux conoce la molestia potencial que pueden suponer las líneas en blanco en un fichero procesable. Además de impedir el procesamiento de estos archivos, estas líneas vacías/en blanco dificultan la lectura y escritura del archivo por parte del software en ejecución. En esta entrada veremos algunos métodos rápidos para eliminar líneas vacías/en blanco en Bash en Linux.

Con el fin de simplificar el tema, hablaremos de 6 posibles enfoques y veremos algunos casos pertinentes con las justificaciones necesarias. Utilizaremos diferentes comandos y ejemplos para eliminar la línea vacía del archivo y mostrar el archivo.

6 Métodos para Eliminar Líneas Vacías en Bash en Linux

Las 6 técnicas enumeradas a continuación se utilizarán para eliminar líneas en blanco en Bash en Linux. Antes de empezar, veamos cuáles son sus funciones:

  • comando sed: Editor de secuencias para filtrar y manipular texto.
  • comando grep: Muestra las líneas que coinciden con patrones.
  • Comando awk: La utilidad awk ejecuta programas escritos en el lenguaje de programación awk, diseñado para manipular datos textuales.
  • Comando cat: Une los archivos y los imprime en la salida estándar.
  • Comando tr: Traduce o elimina caracteres.
  • comando perl: Lenguaje de programación creado específicamente para la edición de texto.

Método 1: Ejecute el comando sed para eliminar líneas vacías en Bash

En nuestra primera solución, utilizaremos el comando sed para eliminar las líneas vacías en Bash del archivo. El comando sed se utiliza para realizar cambios sencillos en el texto.

  • El editor de secuencias sed puede eliminar las líneas en blanco de los archivos, como se ve a continuación.
    sed '/^[[:espacio:]]*$/d' 1_Prueba.txt
  • Cuando ejecutes el script Bash como se menciona arriba, deberías ver una salida similar a la siguiente:
    Esta es la primera línea.
    Esta es la segunda línea.
    Esta es la tercera línea.
    Esta es la cuarta línea.

En el que:

  • '/[[:espacio:]]*$/d': Parte del código se utiliza para encontrar y eliminar la línea vacía del archivo.
  • //: La cadena de búsqueda se almacena allí.
  • ^:Inicio de la cadena.
  • $:Fin de la cadena.
  • d:Elimina la cadena coincidente.
  • txt: Nombre del archivo de origen.

Método 2: Eliminar líneas en blanco en Bash usando el comando grep

Grep son las siglas de Global Regular Expression Print. Podemos eliminar fácilmente las líneas de Bash con el comando grep, otra herramienta incorporada en Bash. Se buscan el texto y las cadenas de un archivo proporcionado y el programa muestra todas las líneas que cumplen un patrón.

  • Puede utilizar esta técnica para eliminar la línea vacía del archivo siguiendo el siguiente ejemplo.
    grep -v '^[:espacio:]]*$' 1_Test.txt
  • La salida de la ejecución del script Bash mencionado anteriormente se parecerá a esto:
    Esta es la primera línea.
    Esta es la segunda línea.
    Ésta es la tercera línea.
    Ésta es la tercera línea.

Los detalles son los siguientes:

  • '[[:espacio:]]*$': Una parte del código se utiliza para encontrar y eliminar la línea vacía del archivo.
  • .: Sustituye a cualquier carácter
  • ^:Inicio de la cadena
  • $: Fin de la cadena.
  • E: Para hacer coincidir patrones en expresiones regulares extendidas.
  • e:Para la concordancia de patrones en expresiones regulares.
  • v:Para eliminar las líneas que no coincidan con el archivo.
  • txt: Nombre del archivo fuente

Método 3: Utilizar el comando awk para eliminar líneas vacías en Bash

En este método, aprovecharemos awk, una palabra clave incorporada en Bash Script. El lenguaje de scripting de propósito general awk se creó para el procesamiento sofisticado de datos de texto. Sus principales usos son la manipulación de textos, la elaboración de informes y el análisis.

  • El siguiente ejemplo muestra cómo eliminar la línea vacía del archivo utilizando esta palabra clave.awk
    '!/^[[:espacio:]]*$/' 1_Prueba.txt
  • Y aquí está la salida:
    Esta es la primera línea.
    Esta es la segunda línea.
    Esta es la tercera línea.
    Ésta es la cuarta línea.

En el que:

  • /[[:espacio:]]*$/: Las líneas en blanco de un fichero se reconocen y eliminan mediante la sintaxis.
  • //: La cadena de búsqueda se almacena allí.
  • ^:Inicio de la cadena
  • $: Fin de la cadena.
  • .:Sustituye a cualquier carácter
  • !: Eliminar la cadena que coincide
  • txt: Nombre del archivo de origen

Método 4: Ejecute el comando cat para eliminar líneas en blanco en Bash

Cat es una abreviatura de concatenar. Se utiliza habitualmente en Linux para leer datos de un archivo. En los sistemas operativos tipo Unix, el comando cat es uno de los más utilizados. Proporciona tres funciones relacionadas con los archivos de texto: mostrar el contenido del archivo, combinar varios archivos en uno solo y crear un archivo nuevo.

  • Podemos eliminar fácilmente las líneas en blanco de un archivo combinando los comandos 'cat' y 'tr' como se muestra a continuación:
    Cat 1_prueba.txt | tr -s '\n' > nuevo_fichero.txt
  • Salida:
    Esta es la primera línea.
    Ésta es la segunda línea.
    Ésta es la segunda línea.
    Esta es la cuarta línea.

A continuación se detallan los detalles:

  • |: El símbolo de la pipa. Utiliza la salida del primer comando como entrada de otro comando.
  • s: Reemplaza cada secuencia de un carácter repetido en el último SET especificado.
  • \n:Para insertar una línea nueva.
  • txt:Nombre del fichero fuente.

Método 5: Eliminar líneas vacías en Bash usando el comando tr

En sistemas Linux y Unix, tr es una utilidad de línea de comandos que traduce, borra y comprime caracteres de la entrada estándar y escribe los resultados en la salida estándar. El comando tr puede eliminar caracteres repetidos, convertir mayúsculas en minúsculas y realizar sustituciones y eliminaciones básicas de caracteres. Normalmente se utiliza junto con otros comandos mediante tuberías.

  • Apriete las letras de nueva línea repetidas para eliminar las líneas en blanco:
    tr -s '\n' < archivo.txt > nuevo_archivo.txt

En el comando anterior, utilizamos:

  • <:Este símbolo de redirección se utiliza para pasar el contenido de archivo.txt al comando tr.
  • >:Símbolo de redirección que escribe la salida del comando en archivo_nuevo.txt.

Método 6: Utilizar el comando perl para eliminar líneas en blanco en Bash

Perl es una versión abreviada de Practical Extraction and Reporting Language. El Perl es un lenguaje de programación creado específicamente para la edición de texto. Hoy en día se utiliza ampliamente para diversas tareas, como la administración de sistemas Linux, la programación de redes, el desarrollo web, etc.

  • El siguiente ejemplo muestra cómo utilizar esta palabra clave para eliminar una línea vacía de un archivo.
    perl -ne 'print if /\S/' 1_Prueba.txt > nuevo_archivo.txt
  • Y aquí está el resultado:
    Esta es la primera línea.
    Ésta es la segunda línea.
    Esta es la tercera línea.
    Esta es la cuarta línea.

En el que:

  • .: Puede utilizarse para sustituir cualquier carácter.
  • ^: Beginning of the string.
  • $:Fin del hilo.
  • E: Para la concordancia de patrones con expresiones regulares ampliadas.
  • e:Concordancia de patrones para expresiones regulares.
  • v:Extraer líneas no coincidentes de un fichero.
  • txt:Nombre del fichero fuente.

Cómo recuperar archivos borrados accidentalmente en Linux

Ahora que ya hemos discutido seis métodos diferentes para eliminar líneas vacías en Bash en Linux, es importante tener en cuenta que los accidentes pueden ocurrir, y a veces archivos importantes pueden ser borrados accidentalmente. Afortunadamente, existen formas de recuperar archivos borrados en Linux.

Una solución muy recomendable es utilizar Wondershare Recoverit Linux File Recovery. Este poderoso software de recuperación de datos está diseñado específicamente para sistemas Linux y puede recobrar rápida y fácilmente archivos borrados, incluso si han sido eliminados permanentemente de la papelera o de la bandeja de reciclaje.

Wondershare Recoverit - Tu software de recuperación de Linux seguro y fiable

Lo han descargado 5.481.435 personas.

Permite recuperar de forma eficaz, segura y completa documentos, fotos, vídeos, música, correos electrónicos y más de 1000 tipos de archivos perdidos o eliminados.

Funciona con las principales distribuciones de Linux, como Ubuntu, Linux Mint, Debian, Fedora, Solus, Opensuse, Manjaro, etc.

Ayuda en más de 500 escenarios de pérdida de datos, como borrado, formateo de disco, fallo del sistema operativo, corte de energía, ataque de virus, partición perdida y muchos más.

Su sencilla interfaz de apuntar y hacer clic le permite recuperar datos de discos duros Linux en unos pocos clics.

Funciona mediante conexión remota. Puedes recuperar datos perdidos incluso cuando tu dispositivo Linux se ha estrellado.

La recuperación de datos de Linux es realmente fácil y sin complicaciones con Wondershare Recoverit. Puedes recuperar tus datos en 3 sencillos pasos.

Paso 1Elige Linux Recovery

Descarga e instala Wondershare Recoverit en tu ordenador. Abra el software y seleccione NAS y Linux. Para continuar, haga clic en la opción Recuperación de Linux.

elige la opción de recuperación de linux
Paso 2Conectar a distancia el ordenador Linux

Como se ve a continuación, se abrirá una nueva ventana en su pantalla. Introduzca los datos necesarios para establecer una conexión remota. Una vez que haya terminado, haga clic en el botón Conectar.

conectar a distancia el ordenador linux

Una vez establecida la conexión, Recoverit buscará automáticamente los archivos perdidos en un ordenador Linux.

escanear archivos borrados/perdidos linux
Paso 3Revisar y recuperar

La parte más agradable de Recoverit es que puedes detener el escaneo en cualquier momento cuando encuentres el archivo que quieres restaurar. Puedes previsualizar los archivos para asegurarte de que son los que quieres recuperar. Para guardar los archivos deseados, selecciónelos y haga clic en el botón Recuperar ahora.

previsualizar archivos borrados/perdidos

El software le pedirá que seleccione la ubicación en la que desea guardar los archivos recuperados. Para obtener los datos restaurados, haga clic en Recuperar.

recuperar y guardar archivos borrados/perdidos
Descargar gratis

Para Windows Vista/7/8/10/11

Descargar gratis

Para macOS X 10.10 - macOS 13

Resumen

¡Hemos discutido los seis métodos para eliminar las líneas vacías en Bash en Linux, y en caso de pérdida accidental de datos, Wondershare Recoverit Linux Recovery es un software recomendado para recuperar sus datos perdidos de forma segura y sin problemas!