GNU/Linux >> Tutoriales Linux >  >> Linux

Elimine los espacios en blanco en cada comienzo de línea del archivo, usando bash

use puede usar perl -i para el reemplazo en el lugar.

perl -p -e 's/^ *//' file 

Para eliminar los espacios en blanco antes del inicio de la línea si el patrón coincide. Use el siguiente comando. Por ejemplo, su foo.in tiene un patrón como este

      This is a test                                
                    Lolll
                       blaahhh
      This is a testtt

Después de emitir el siguiente comando

sed -e '/This/s/ *//' < foo.in > foo.out

El foo.out será

This is a test
             Lolll
                blaahhh
This is a testtt

sed -i 's/ //g' your_file lo hará, modificando el archivo en su lugar.

Para eliminar solo los espacios en blanco al comienzo de una sola línea, use sed -i 's/^ *//' your_file

En la primera expresión, reemplazamos todos los espacios con nada. En la segunda, reemplazamos al principio usando el ^ palabra clave


tr (borrar todos los espacios en blanco):

$ tr -d ' ' <input.txt >output.txt
$ mv output.txt input.txt

sed (elimine los espacios en blanco iniciales)

$ sed -i 's/^ *//' input.txt

Linux
  1. ¿Usando una referencia a una variable de cadena Bash en Sed?

  2. ¿Cómo eliminar varias líneas aleatorias de un archivo de texto usando Sed?

  3. ¿Cómo puedo agregar una cadena al comienzo de cada archivo en una carpeta en bash?

  4. ¿Cómo leer la penúltima línea en un archivo usando Bash?

  5. ¿Redirigir toda la salida al archivo usando Bash en Linux?

Cómo leer un archivo línea por línea en Bash

Sustitución de cadena en Bash

Cómo quitar líneas de un archivo usando el comando Sed

Cómo eliminar líneas vacías en archivos usando Grep, Sed y Awk

Tutorial de Unix Sed:Impresión de líneas de archivos usando direcciones y patrones

Tutorial de Unix Sed:eliminar líneas de archivos usando direcciones y patrones