Comment remplacer un personnage par un autre - bash

Comment remplacer un personnage par un autre - bash
Dans les scripts bash, il est courant de remplacer un caractère par un autre caractère dans une chaîne car cela peut être utile pour le traitement des données, la manipulation du texte et de nombreux autres cas d'utilisation. Heureusement, Bash fournit plusieurs méthodes intégrées pour le faire et dans cet article, nous couvrirons certaines des façons les plus courantes de remplacer les personnages dans un script bash.

Comment remplacer un personnage par un autre en script bash

Remplacer un personnage par un autre est une tâche courante dans les scripts de ceinture et peut être utile dans de nombreux scénarios différents. Voici les trois façons faciles de remplacer un personnage par un autre dans un script bash:

  • Via la commande tr
  • Via la commande sed
  • Grâce à l'expansion des paramètres

Comment remplacer un caractère par un autre en utilisant la commande tr dans bash

La commande tr est un outil simple pour traduire, supprimer ou presser des caractères dans une chaîne. Il peut être utilisé pour remplacer un caractère par un autre en spécifiant les caractères à remplacer et leurs remplacements, voici la syntaxe pour utiliser cette commande:

tr '' ''

Ici pour l'illustration si j'ai pris une chaîne qui est «Hello Linux» et si je veux remplacer la lettre en majuscules L par la lettre majuscule W, cela peut être fait par l'utilisation de la commande tr comme ceci:

Echo "Hello Linux" | tr 'l' 'w'

Voici le code de bash complet qui montre comment utiliser la commande tr pour remplacer un caractère par un autre:

#!/ bac / bash
Main_string = "Hello Linux"
exporter new_string = $ (echo "$ main_string" | tr 'l' 'w')
Echo "Main_string:" $ main_string
echo "Modified_string:" $ new_string

Voici la sortie du script bash, L est remplacé par W:

Comment remplacer un caractère par une autre en utilisant la commande SED dans bash

Une autre façon de remplacer un personnage par un autre personnage dans Bash est d'utiliser la commande SED. La commande SED est un éditeur de flux qui peut effectuer diverses opérations sur une chaîne, y compris la substitution. Voici la syntaxe pour utiliser cette commande pour remplacer un caractère par un autre:

sed 's /// g'

Ici pour l'illustration si j'ai pris une chaîne qui est "Hello Linux" et que je souhaite remplacer la lettre minuscule "L" par "W", alors cela peut être fait en utilisant la commande tr comme ceci:

Echo "Hello Linux" | sed 's / l / w / g'

Voici le code de bash complet qui montre comment utiliser la commande SED pour remplacer un caractère par un autre:

#!/ bac / bash
Main_string = "Hello Linux"
New_string = $ (echo "$ main_string" | SED 'S / L / W / G')
Echo "Main_string:" $ main_string
echo "Modified_string:" $ new_string

Dans cet exemple, nous utilisons la commande echo pour sortir la chaîne "Hello Linux", puis la sortie de la commande SED. La commande SED utilise la commande de substitution (s) pour remplacer toutes les occurrences de la lettre «L» par la lettre «W». L'option G à la fin de la commande indique à SED de remplacer toutes les occurrences du caractère dans la chaîne, pas seulement la première occurrence. La sortie de cette commande sera «Hello Winux»:

Comment remplacer un caractère par un autre en utilisant l'expansion des paramètres dans Bash

Une autre façon de remplacer un personnage par un autre en bash, vous pouvez être en utilisant une expansion de paramètre et voici un exemple qui remplace «L» de la chaîne d'origine «W» New Character:

#!/ bac / bash
Main_string = "Hello Linux"
New_string = "$ main_string // l / w"
Echo "Main_string:" $ main_string
echo "Modified_string:" $ new_string

Dans cet exemple, nous utilisons l'expansion des paramètres pour remplacer toutes les occurrences de la lettre minuscule «H» par la lettre «S» dans la variable Main_string. La sortie de cette commande sera «Hello Winux»:

Conclusion

Il existe plusieurs façons de remplacer un personnage par un autre caractère dans Bash, notamment en utilisant la commande tr, la commande SED et l'expansion des paramètres. Chaque méthode présente ses propres avantages et inconvénients, alors choisissez celui qui fonctionne le mieux pour votre cas d'utilisation spécifique car ce guide donne les trois méthodes pour le faire.