Interview › Scripting (Bash, Groovy)
What is the difference between && and || in command chaining? [Intermediate]
Answer
&& runs the next command only if the previous command succeeds. || runs the next command only if the previous command fails. They are useful for simple control flow but should not replace clear if statements for complex logic.
Technical explanation
command1 && command2 means command2 depends on command1 success.
command1 || command2 means command2 is an error handler or fallback.
Be careful with a && b || c as a fake ternary because c can run if b fails, not only if a fails.
Hands-on example
mkdir -p build && go test ./...
kubectl get ns prod >/dev/null 2>&1 || kubectl create ns prod
if deploy; then
notify_success
else
notify_failure
fi
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
- What is the purpose of the shebang line, and what does #!/bin/bash do? [Basic]
- What is the difference between sh and bash? [Basic]
- How do you make a script executable and run it? [Basic]
- What is the difference between running a script with ./script.sh, bash script.sh, and source script.sh? [Basic]
- What does sourcing a script do differently from executing it? [Basic]
- How do you declare a variable in Bash, and why are spaces around = not allowed? [Basic]
- What is the difference between $var and ${var}? [Basic]
- What is the difference between single quotes and double quotes in Bash? [Basic]