by Sai gowtham

How to replace the character in a string with Bash

To replace one character in a string with another character, we can use the parameter extension in Bash (shell).

Here is an example that removes the character a with b in the following string.

string="abc"
final=${string//[a]/b}

echo $final

Output:

bbc

Similarly, you can also replace multiple characters in the string with a single character like this.

string="abcxyabcxyabc"
final=${string//[xy]/1} # replaces xy with 1

echo $final

Output:

abc11abc11abc

In sed you can do it like this:

string="abcxyabcxyabc"
echo "$string" | sed -r 's/[xy]+/1/g' # replaces xy with 1

Top Udemy Courses

JavaScript - The Complete Guide 2020 (Beginner + Advanced)
JavaScript - The Complete Guide 2020 (Beginner + Advanced)
45,614 students enrolled
52 hours of video content
View Course
React - The Complete Guide (incl Hooks, React Router, Redux)
React - The Complete Guide (incl Hooks, React Router, Redux)
284,472 students enrolled
40 hours of video content
View Course
Vue - The Complete Guide (w/ Router, Vuex, Composition API)
Vue - The Complete Guide (w/ Router, Vuex, Composition API)
130,921 students enrolled
48.5 hours of video content
View Course