Interview Scripting (Bash, Groovy)

What is the difference between $var and ${var}? [Basic]

Answer

$var and ${var} both expand a variable, but braces disambiguate the variable name and enable parameter expansion operations. I use ${var} when appending text, using defaults, slicing, or manipulating strings.

Technical explanation

Without braces, Bash reads the longest valid variable name, which can produce wrong expansions when text follows the variable.

Braces are required for array indexes, string length, defaults, substring operations, and pattern removal.

Consistently using braces can improve readability in production scripts.

Hands-on example

service="api"

echo "$service_worker" # expands variable named service_worker, likely empty

echo "${service}_worker" # prints api_worker

echo "${service:-default}" # default only if unset or empty

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