GNU/Linux >> Linux Esercitazione >  >> Linux

Elimina gli spazi bianchi all'inizio di ogni riga del file, usando bash

use può usare perl -i per la sostituzione sul posto.

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

Per eliminare gli spazi bianchi prima dell'inizio della riga se il modello corrisponde. Usa il seguente comando. Ad esempio, il tuo foo.in ha uno schema come questo

      This is a test                                
                    Lolll
                       blaahhh
      This is a testtt

Dopo aver emesso il seguente comando

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

Il foo.out sarà

This is a test
             Lolll
                blaahhh
This is a testtt

sed -i 's/ //g' your_file lo farà, modificando il file inplace.

Per eliminare solo gli spazi bianchi all'inizio di una singola riga, usa sed -i 's/^ *//' your_file

Nella prima espressione, sostituiamo tutti gli spazi con niente. Nella seconda, sostituiamo all'inizio usando ^ parola chiave


tr (cancella tutti gli spazi bianchi):

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

sed (cancella gli spazi bianchi iniziali)

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

Linux
  1. Come eliminare più righe casuali da un file di testo utilizzando Sed?

  2. In Bash, come aggiungo una stringa dopo ogni riga in un file?

  3. Come posso aggiungere una stringa all'inizio di ogni file in una cartella in bash?

  4. Come leggere la penultima riga in un file usando Bash?

  5. Come contare il numero di schede in ogni riga usando lo script di shell?

Come leggere un file riga per riga in Bash

Sostituzione di String in Bash

Come rimuovere le righe da un file usando il comando Sed

Come eliminare le righe vuote nei file utilizzando Grep, Sed e Awk

Esercitazione Unix Sed:stampa di righe di file utilizzando l'indirizzo e i modelli

Esercitazione Unix Sed:Elimina le righe di file utilizzando l'indirizzo e i modelli