Remplacement de chaîne dans Bash
- Remplacer une sous-chaîne par une autre chaîne dans Bash
- Remplacer la chaîne entière égale à la sous-chaîne
- Remplacer la dernière sous-chaîne détectée dans une chaîne dans Bash
Bash nous permet de faire des appels à d’autres programmes, et en spécifiant les entrées et les sorties nécessaires, nous pouvons générer n’importe quel résultat. Cet article explique comment remplacer une sous-chaîne par une autre chaîne.
Remplacer une sous-chaîne par une autre chaîne dans Bash
La commande ci-dessous remplacera la première chaîne découverte qui correspond à une sous-chaîne à partir du premier caractère de la chaîne par une chaîne de remplacement.
${string/substring/replacement}
Voyons un exemple.
$ text="I am learning linux and linux"
$ reptext="bash"
$ echo "${text/linux/"$reptext"}''
Production :
I am learning bash and linux
Comme mentionné ci-dessus, la première chaîne linux
est remplacée par bash
, et l’autre est intacte.
Remplacer la chaîne entière égale à la sous-chaîne
Nous utilisons la commande ci-dessous pour remplacer la chaîne entière égale à la sous-chaîne par la chaîne de remplacement.
${string//substring/replacement}
Voyons un exemple :
$ text="I am learning linux and linux"
$ reptext="bash"
$ echo "${text//linux/"$reptext"}"
Production :
I am learning bash and bash
Maintenant, il y a deux barres obliques (//)
au lieu d’une (/)
. Dans la sortie, nous pouvons voir que la commande ci-dessus a remplacé toutes les sous-chaînes égales à la chaîne de remplacement.
Remplacer la dernière sous-chaîne détectée dans une chaîne dans Bash
Nous utiliserons la commande ci-dessous pour remplacer la dernière sous-chaîne détectée dans une chaîne par une chaîne de remplacement.
${string/%substring/replacement}
Voyons un exemple :
$ text="I am learning linux and linux"
$ reptext="bash"
$ echo "${text/%linux/"$reptext"}"
Production :
I am learning linux and bash