Bird
Raised Fist0
Bash Scriptingscripting~5 mins

Style guide and conventions in Bash Scripting

Choose your learning style10 modes available
Introduction

Good style and conventions make your scripts easy to read and fix. They help others understand your work quickly.

When writing a script to automate daily tasks at work.
When sharing your script with teammates or the community.
When you want to avoid bugs caused by unclear code.
When maintaining or updating scripts after some time.
When learning scripting and want to build good habits.
Syntax
Bash Scripting
# Use comments to explain your code
# Use lowercase for variable names
variable_name="value"

# Use indentation for readability
if [ "$variable_name" = "value" ]; then
    echo "It matches"
fi

Comments start with # and explain what the code does.

Use lowercase letters and underscores for variable names to keep them clear.

Examples
Comments explain the purpose of the script.
Bash Scripting
# Good comment style
# This script prints a greeting
name="Alice"
echo "Hello, $name!"
Variable names describe what they hold.
Bash Scripting
# Use clear variable names
user_age=30
if [ "$user_age" -ge 18 ]; then
    echo "Adult"
fi
Indentation helps see the code structure.
Bash Scripting
# Indent inside conditions
if [ "$name" = "Bob" ]; then
    echo "Hi Bob!"
else
    echo "Who are you?"
fi
Sample Program

This script uses comments, clear variable names, and indentation to make it easy to read.

Bash Scripting
#!/bin/bash

# This script checks if a user is an adult
user_name="Charlie"
user_age=20

# Check age
if [ "$user_age" -ge 18 ]; then
    echo "$user_name is an adult."
else
    echo "$user_name is not an adult."
fi
OutputSuccess
Important Notes

Always start scripts with #!/bin/bash to specify the shell.

Keep lines short and clear for easy reading.

Use comments to explain why, not what, when the code is obvious.

Summary

Use comments to explain your script.

Choose clear, lowercase variable names with underscores.

Indent code blocks to show structure.

Practice

(1/5)
1. Which of the following is the best practice for naming variables in a bash script according to style guides?
easy
A. Use clear, lowercase names with underscores, like file_count
B. Use uppercase names with spaces, like FILE COUNT
C. Use mixed case without underscores, like FileCount
D. Use numbers only, like 123

Solution

  1. Step 1: Understand variable naming conventions

    Bash style guides recommend clear, lowercase variable names with underscores for readability.
  2. Step 2: Compare options

    Use clear, lowercase names with underscores, like file_count uses lowercase and underscores, which is clear and readable. Other options use spaces, uppercase, or numbers only, which are not recommended.
  3. Final Answer:

    Use clear, lowercase names with underscores, like file_count -> Option A
  4. Quick Check:

    Variable naming = lowercase_with_underscores [OK]
Hint: Pick lowercase with underscores for variable names [OK]
Common Mistakes:
  • Using uppercase or spaces in variable names
  • Using camelCase instead of underscores
  • Using numbers only as variable names
2. Which of the following is the correct way to add a comment in a bash script?
easy
A. # This is a comment
B. /* This is a comment */
C. // This is a comment
D.

Solution

  1. Step 1: Identify bash comment syntax

    Bash uses the # symbol to start a comment line.
  2. Step 2: Check each option

    # This is a comment uses #, which is correct. Options B, C, and D use comment styles from other languages.
  3. Final Answer:

    # This is a comment -> Option A
  4. Quick Check:

    Comment start = # [OK]
Hint: Use # to start comments in bash scripts [OK]
Common Mistakes:
  • Using /* */ like in C
  • Using // like in JavaScript
  • Using like in HTML
3. What will be the output of the following bash script snippet?
count=3
if [ $count -gt 0 ]; then
  echo "Count is positive"
fi
medium
A. No output
B. Syntax error
C. Count is positive
D. Count is zero

Solution

  1. Step 1: Evaluate the condition

    The variable count is 3, which is greater than 0, so the condition [ $count -gt 0 ] is true.
  2. Step 2: Determine the output

    Since the condition is true, the script executes echo "Count is positive", printing that line.
  3. Final Answer:

    Count is positive -> Option C
  4. Quick Check:

    3 > 0 prints message [OK]
Hint: If condition true, echo runs; else no output [OK]
Common Mistakes:
  • Confusing syntax causing errors
  • Assuming no output if condition true
  • Misreading the comparison operator
4. Identify the error in this bash script snippet:
for i in 1 2 3
 do
 echo $i
 done
medium
A. Missing semicolon after 3
B. Incorrect indentation of echo
C. Missing do keyword
D. No error, script runs correctly

Solution

  1. Step 1: Check for syntax correctness

    The for loop syntax is correct: for i in 1 2 3; do ... done. The newline before do is allowed.
  2. Step 2: Verify indentation and keywords

    Indentation is recommended but not required. The do keyword is present. No semicolon needed before newline.
  3. Final Answer:

    No error, script runs correctly -> Option D
  4. Quick Check:

    Newline before do is valid [OK]
Hint: Newline before do is allowed; indentation is style only [OK]
Common Mistakes:
  • Thinking semicolon is mandatory before newline
  • Confusing indentation with syntax error
  • Missing do keyword
5. You want to write a bash script that reads a filename from the user, checks if it exists, and prints a message. Which style guide practice should you follow to make your script clear and maintainable?
hard
A. Use uppercase variable names and no comments
B. Use clear lowercase variable names with underscores and add comments explaining steps
C. Write all code in one line without indentation
D. Avoid using comments and use single-letter variable names

Solution

  1. Step 1: Recall style guide recommendations

    Good style means using clear, lowercase variable names with underscores and adding comments to explain the script.
  2. Step 2: Evaluate options

    Use clear lowercase variable names with underscores and add comments explaining steps follows these practices. Other options use uppercase, no comments, poor formatting, or unclear names, which reduce clarity.
  3. Final Answer:

    Use clear lowercase variable names with underscores and add comments explaining steps -> Option B
  4. Quick Check:

    Clear names + comments = maintainable script [OK]
Hint: Use clear names and comments for readable scripts [OK]
Common Mistakes:
  • Skipping comments thinking code is self-explanatory
  • Using uppercase or single-letter variables
  • Writing code without indentation
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard