Interview Scripting (Bash, Groovy)

How do you replace text in a variable using parameter expansion? [Intermediate]

Answer

Bash can replace text in a variable using ${var/pattern/replacement} for the first match and ${var//pattern/replacement} for all matches. The pattern is a shell pattern, not a full regex.

Technical explanation

This is useful for lightweight string normalization without spawning sed.

Use # or % anchored variants for prefix or suffix replacements.

For regex-based replacements or file edits, use sed, awk, Perl, or another appropriate tool.

Hands-on example

image="registry.local/orders-api:latest"

echo "${image/latest/$(git rev-parse --short HEAD)}"

name="feature/add login"

safe="${name//[^a-zA-Z0-9._-]/-}"

echo "$safe

Preparing for an interview?

Check how well your resume matches the role with our free resume checker— match score, ATS check, and the skills you're missing.

More Scripting (Bash, Groovy) interview questions

← All Scripting (Bash, Groovy) questions