GNU/Linux >> Tutoriels Linux >  >> Linux

Supprimer les espaces blancs dans chaque début de ligne de fichier, en utilisant bash

use peut utiliser perl -i pour un remplacement sur place.

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

Pour supprimer les espaces blancs avant le début de la ligne si le motif correspond. Utilisez la commande suivante. Par exemple, votre foo.in a un modèle comme celui-ci

      This is a test                                
                    Lolll
                       blaahhh
      This is a testtt

Après avoir lancé la commande suivante

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

Le foo.out sera

This is a test
             Lolll
                blaahhh
This is a testtt

sed -i 's/ //g' your_file le fera, en modifiant le fichier sur place.

Pour supprimer uniquement les espaces blancs au début d'une seule ligne, utilisez sed -i 's/^ *//' your_file

Dans la première expression, nous remplaçons tous les espaces par rien. Dans la seconde, nous remplaçons au début en utilisant le ^ mot-clé


tr (supprimer tous les espaces):

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

sed (supprimer les espaces blancs en tête)

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

Linux
  1. Comment supprimer les N premières lignes d'un fichier Ascii à l'aide des commandes Shell ?

  2. Dans Bash, comment ajouter une chaîne après chaque ligne dans un fichier ?

  3. Comment puis-je ajouter une chaîne au début de chaque fichier dans un dossier en bash ?

  4. Comment lire l'avant-dernière ligne d'un fichier avec Bash ?

  5. Comment compter le nombre d'onglets dans chaque ligne à l'aide d'un script shell ?

Comment lire un fichier ligne par ligne dans Bash

Remplacement de chaîne dans Bash

Comment supprimer des lignes d'un fichier à l'aide de la commande Sed

Comment supprimer des lignes vides dans des fichiers à l'aide de Grep, Sed et Awk

Tutoriel Unix Sed :Impression de lignes de fichier à l'aide d'adresses et de modèles

Tutoriel Unix Sed :Supprimer des lignes de fichier à l'aide d'adresses et de modèles