Posted on • Originally published atbabakks.github.io on
String Replace in Shell with sed [RE#4]
Though 99% of the time we use a text editor likevim
ornano
, still knowing how to do simple string manipulations via shell commands is more than necessary. The simplest use case emerges in CI/CD pipeline where you may need to replace some placeholder with a specific text (e.g., a dynamic docker image tag). 🤖
One simple tool for this purpose issed
. For example, to replace “[tag]” with “abcdef” execute:
echo "docker push -t app:[tag]" | sed -e 's/[tag]/abcdef/g'
You can also usesed
just likegrep
and pass a file to be used as the input stream:
sed -e 's/[tag]/abcdef/g' input-file.txt
You may add more expressions by adding any number of-e expression
arguments:
sed -e 's/[tag]/abcdef/g' -e 's/[image]/app/g' input-file.txt
ℹ️ To learn more useful applications ofsed
have a look atthis article.
About Regular Encounters
I’ve decided to record my daily encounters with professional issues on a somewhat regular basis. Not all of them are equally important/unique/intricate, but are indeed practical, real, and of course,textually minimal.
Top comments(0)
For further actions, you may consider blocking this person and/orreporting abuse