Bird
Raised Fist0
Bash Scriptingscripting~5 mins

Creating a script file (.sh) in Bash Scripting - Quick Revision & Summary

Choose your learning style10 modes available
Recall & Review
beginner
What is the first line in a bash script file and why is it important?
The first line is called the shebang (e.g., #!/bin/bash). It tells the system which program to use to run the script.
Click to reveal answer
beginner
How do you make a bash script file executable?
Use the command chmod +x filename.sh to give execute permission to the script file.
Click to reveal answer
beginner
What command runs a bash script named myscript.sh in the current directory?
Run the script with ./myscript.sh if it has execute permission.
Click to reveal answer
beginner
Why should you use simple text editors like nano or vim to create a .sh file?
Because they save files as plain text without extra formatting, which is required for scripts to run correctly.
Click to reveal answer
beginner
What does the echo command do in a bash script?
It prints text or variables to the screen, helping you show messages or output.
Click to reveal answer
What does the shebang line #!/bin/bash do in a script?
ARuns the script as root
BSpecifies the script interpreter
CComments out the line
DDeletes the script after running
Which command makes a script file executable?
Aedit script.sh
Brun script.sh
Cchmod +x script.sh
Dopen script.sh
How do you run a script named test.sh in the current folder?
A./test.sh
Bbash test.sh
Crun test.sh
Dopen test.sh
Which editor is best for creating a bash script file?
AExcel
BMicrosoft Word
CPhotoshop
Dnano
What does the command echo "Hello" do in a script?
APrints Hello on the screen
BDeletes Hello
CCreates a file named Hello
DRuns Hello program
Explain the steps to create and run a simple bash script file.
Think about writing, saving, permission, and running.
You got /6 concepts.
    Why is it important to use the shebang line in a bash script?
    It tells the system how to run the script.
    You got /3 concepts.

      Practice

      (1/5)
      1. What is the main purpose of creating a .sh script file in bash?
      easy
      A. To compile programs
      B. To store text documents
      C. To save a list of commands to run them later easily
      D. To create image files

      Solution

      1. Step 1: Understand what a script file is

        A .sh file contains bash commands saved to run multiple times without typing again.
      2. Step 2: Identify the purpose of saving commands

        Saving commands helps automate tasks and avoid retyping, which matches To save a list of commands to run them later easily.
      3. Final Answer:

        To save a list of commands to run them later easily -> Option C
      4. Quick Check:

        Script file purpose = save commands [OK]
      Hint: Scripts save commands to run anytime without retyping [OK]
      Common Mistakes:
      • Thinking .sh files are for text or images
      • Confusing scripts with compiled programs
      • Not knowing scripts automate commands
      2. Which line should you add at the very top of a bash script file to specify the interpreter?
      easy
      A. #!/bin/python
      B. #!/bin/bash
      C. #!/usr/bin/node
      D. #!/bin/shutdown

      Solution

      1. Step 1: Identify the correct shebang for bash scripts

        The shebang line tells the system which program runs the script. For bash, it is #!/bin/bash.
      2. Step 2: Eliminate incorrect interpreters

        Options A, C, and D point to other interpreters or invalid commands.
      3. Final Answer:

        #!/bin/bash -> Option B
      4. Quick Check:

        Shebang for bash = #!/bin/bash [OK]
      Hint: Use #!/bin/bash as first line to run bash scripts [OK]
      Common Mistakes:
      • Using wrong interpreter path
      • Forgetting the #! at the start
      • Confusing bash with other languages
      3. What will be the output when you run this script named greet.sh?
      #!/bin/bash
      echo "Hello, $USER!"
      medium
      A. Syntax error
      B. Hello, root!
      C. Hello, $USER!
      D. Hello, your-username!

      Solution

      1. Step 1: Understand the variable $USER in bash

        $USER is an environment variable that holds the current user's username.
      2. Step 2: Predict the echo output

        The echo command prints "Hello, " followed by the username, so it outputs "Hello, your-username!" where your-username is the actual user.
      3. Final Answer:

        Hello, your-username! -> Option D
      4. Quick Check:

        $USER expands to username = Hello, your-username! [OK]
      Hint: Variables like $USER show your username in scripts [OK]
      Common Mistakes:
      • Thinking $USER prints literally
      • Expecting 'root' always
      • Confusing syntax causing errors
      4. You wrote a script myscript.sh but when you run ./myscript.sh, it says Permission denied. What is the likely fix?
      medium
      A. Run chmod +x myscript.sh to make it executable
      B. Add #!/bin/bash at the top
      C. Rename the file to myscript.txt
      D. Run the script with bash myscript.sh only

      Solution

      1. Step 1: Understand the cause of 'Permission denied'

        This error usually means the file is not executable by the user.
      2. Step 2: Make the script executable

        Using chmod +x myscript.sh adds execute permission, allowing ./myscript.sh to run.
      3. Final Answer:

        Run chmod +x myscript.sh to make it executable -> Option A
      4. Quick Check:

        Permission denied fix = chmod +x [OK]
      Hint: Use chmod +x to allow script execution [OK]
      Common Mistakes:
      • Forgetting to make script executable
      • Only adding shebang without permissions
      • Renaming file instead of fixing permissions
      5. You want to create a script backup.sh that prints "Backup started" and then lists files in the current directory. Which script content is correct?
      hard
      A. #!/bin/bash echo "Backup started" ls
      B. echo "Backup started" ls #!/bin/bash
      C. #!/bin/bash echo Backup started ls-l
      D. #!/bin/sh echo "Backup started" list

      Solution

      1. Step 1: Check the shebang and commands order

        The script must start with #!/bin/bash to run in bash, then commands follow in order.
      2. Step 2: Verify commands and syntax

        #!/bin/bash echo "Backup started" ls has correct shebang, echo with quotes, and ls command to list files. Others have wrong order, missing quotes, or invalid commands.
      3. Final Answer:

        #!/bin/bash echo "Backup started" ls -> Option A
      4. Quick Check:

        Correct script structure = #!/bin/bash echo "Backup started" ls [OK]
      Hint: Start script with #!/bin/bash then commands line by line [OK]
      Common Mistakes:
      • Placing shebang after commands
      • Using wrong commands like 'list'
      • Missing quotes around strings
      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