Bird
Raised Fist0
Bash Scriptingscripting~10 mins

Running scripts in Bash Scripting - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to run a script named myscript.sh in the current directory.

Bash Scripting
./[1]
Drag options to blanks, or click blank then click option'
Astart.sh
Bmyscript.sh
Cscript.sh
Drun.sh
Attempts:
3 left
💡 Hint
Common Mistakes
Forgetting to use ./ before the script name.
Using the wrong script file name.
2fill in blank
medium

Complete the command to make the script myscript.sh executable.

Bash Scripting
chmod [1] myscript.sh
Drag options to blanks, or click blank then click option'
A+x
Brwx
C-x
D777
Attempts:
3 left
💡 Hint
Common Mistakes
Using chmod rwx which sets permissions but not correctly.
Using chmod -x which removes execute permission.
3fill in blank
hard

Fix the error in the command to run myscript.sh with bash explicitly.

Bash Scripting
bash [1]
Drag options to blanks, or click blank then click option'
A./myscript
Bmyscript
C./myscript.sh
Dmyscript.sh
Attempts:
3 left
💡 Hint
Common Mistakes
Omitting ./ causing 'file not found' error.
Using script name without extension.
4fill in blank
hard

Fill both blanks to create a script that prints 'Hello' and then exits with status 0.

Bash Scripting
#!/bin/bash
 echo [1]
 exit [2]
Drag options to blanks, or click blank then click option'
A"Hello"
B0
C1
D'Hello'
Attempts:
3 left
💡 Hint
Common Mistakes
Not quoting the string, causing errors.
Using exit status other than 0 for success.
5fill in blank
hard

Fill all three blanks to create a script that takes one argument and prints it.

Bash Scripting
#!/bin/bash
 input=[1]
 echo [2]
 exit [3]
Drag options to blanks, or click blank then click option'
A$1
B$input
C0
D$0
Attempts:
3 left
💡 Hint
Common Mistakes
Using $0 which is the script name, not the argument.
Not exiting with 0 to indicate success.

Practice

(1/5)
1. What is the correct way to run a bash script named myscript.sh after making it executable?
easy
A. Use ./myscript.sh to run the script.
B. Use run myscript.sh to run the script.
C. Use execute myscript.sh to run the script.
D. Use start myscript.sh to run the script.

Solution

  1. Step 1: Understand script execution permission

    Before running a script with ./myscript.sh, it must have execute permission set using chmod +x myscript.sh.
  2. Step 2: Run the script using relative path

    Using ./myscript.sh runs the script in the current directory. Other commands like run, execute, or start are not valid bash commands.
  3. Final Answer:

    Use ./myscript.sh to run the script. -> Option A
  4. Quick Check:

    Executable script run with ./script.sh = A [OK]
Hint: Make script executable, then run with ./script.sh [OK]
Common Mistakes:
  • Trying to run script without execute permission
  • Using invalid commands like run or start
  • Not specifying path to script
2. Which of the following is the correct syntax to run a bash script named backup.sh without changing its permissions?
easy
A. ./backup.sh
B. sh run backup.sh
C. bash backup.sh
D. execute backup.sh

Solution

  1. Step 1: Understand running scripts without execute permission

    If the script is not executable, you can run it by explicitly calling the shell interpreter like bash backup.sh.
  2. Step 2: Identify correct syntax

    bash backup.sh runs the script using bash without needing execute permission. Other options either require execute permission or are invalid commands.
  3. Final Answer:

    bash backup.sh -> Option C
  4. Quick Check:

    Run script with interpreter command = B [OK]
Hint: Use bash script.sh to run without execute permission [OK]
Common Mistakes:
  • Trying to run with ./ without execute permission
  • Using invalid commands like execute
  • Adding extra words like 'run' before script name
3. Given the script hello.sh with content:
#!/bin/bash
echo "Hello, $1!"

What is the output of ./hello.sh World?
medium
A. Hello, $1!
B. Hello, World!
C. Hello, !
D. Syntax error

Solution

  1. Step 1: Understand script parameter usage

    The script uses $1 which is the first argument passed to the script. Here, World is passed as the first argument.
  2. Step 2: Predict output after substitution

    The echo command prints "Hello, World!" by replacing $1 with the argument.
  3. Final Answer:

    Hello, World! -> Option B
  4. Quick Check:

    Argument $1 replaced by 'World' = A [OK]
Hint: Arguments like $1 print passed values in scripts [OK]
Common Mistakes:
  • Printing literal $1 instead of argument
  • Missing argument causing empty output
  • Assuming syntax error due to shebang
4. You try to run a script with ./myscript.sh but get Permission denied. What is the most likely fix?
medium
A. Add execute permission with chmod +x myscript.sh.
B. Run the script with ./myscript.sh again.
C. Rename the script to myscript.sh.sh.
D. Delete the script and create a new one.

Solution

  1. Step 1: Identify cause of 'Permission denied'

    This error usually means the script file does not have execute permission.
  2. Step 2: Fix permission issue

    Use chmod +x myscript.sh to add execute permission, allowing the script to run.
  3. Final Answer:

    Add execute permission with chmod +x myscript.sh. -> Option A
  4. Quick Check:

    Permission denied fixed by chmod +x = D [OK]
Hint: Use chmod +x to fix permission denied errors [OK]
Common Mistakes:
  • Trying to run script again without changing permissions
  • Renaming script does not fix permissions
  • Deleting script is unnecessary
5. You want to run a script deploy.sh located in /home/user/scripts from anywhere in the terminal without typing the full path. What is the best way to do this?
hard
A. Run the script with bash /home/user/scripts/deploy.sh every time.
B. Copy deploy.sh to /tmp directory.
C. Rename the script to deploy without extension.
D. Add /home/user/scripts to the PATH environment variable.

Solution

  1. Step 1: Understand PATH environment variable

    PATH lists directories where the shell looks for commands. Adding a directory lets you run scripts inside it by name.
  2. Step 2: Add script directory to PATH

    By adding /home/user/scripts to PATH, you can run deploy.sh from anywhere simply by typing deploy.sh.
  3. Final Answer:

    Add /home/user/scripts to the PATH environment variable. -> Option D
  4. Quick Check:

    PATH addition enables running scripts anywhere = C [OK]
Hint: Add script folder to PATH to run scripts anywhere [OK]
Common Mistakes:
  • Copying script to /tmp is temporary and not recommended
  • Running with full path every time is inconvenient
  • Renaming script does not affect running from anywhere
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