this post was submitted on 02 Jul 2023
13 points (93.3% liked)

Linux Admin : Resources for Linux SysAdmin

668 readers
1 users here now

General Discussion for topics for Linux SysAdmin

founded 2 years ago
MODERATORS
 

In this tutorial, we will learn how to write basic shell scripts using Markdown. Shell scripting allows us to automate tasks and execute commands in a sequential manner. Markdown is a lightweight markup language that provides an easy way to write formatted documentation.

Table of Contents

Getting Started

Before we begin, make sure you have a shell environment available on your machine. Common shell environments include Bash, Zsh, and PowerShell.

Creating a Shell Script

  1. Open a text editor and create a new file. Give it a meaningful name, such as myscript.sh.
  2. Add the following shebang at the top of the file to specify the shell to be used:
  #!/bin/bash

Make sure to replace bash with the appropriate shell if you're using a different one. 3. Now you can start writing your shell script using Markdown syntax. You can include headers, lists, code blocks, and other formatting elements as needed. 4. Save the file when you're done.

Here's an example of a simple shell script written in Markdown:

# My First Shell Script

This is my first shell script written in Markdown.

## Script

```bash
#!/bin/bash

echo "Hello, World!"

## Running a Shell Script

To execute a shell script, you need to make it executable first. Open a terminal and navigate to the directory where your script is located. Then run the following command:

```bash
chmod +x myscript.sh

Replace myscript.sh with the name of your script.

To run the script, use the following command:

./myscript.sh

Replace myscript.sh with the name of your script.

Variables

Variables in shell scripts are used to store data and manipulate values. Here's an example of defining and using a variable in Markdown:

# Variables

To define a variable, use the following syntax:

```bash
variable_name=value

For example:

name="John"

To use the variable, prefix it with a dollar sign ($):

echo "Hello, $name!"

## User Input

Shell scripts can interact with the user by reading input from the keyboard. Here's an example of reading user input and using it in a script:

```markdown
# User Input

To read user input, use the `read` command followed by the variable name:

```bash
read -p "Enter your name: " name

The user's input will be stored in the name variable. You can then use it in your script:

echo "Hello, $name!"

## Conditional Statements

Conditional statements allow you to execute different code blocks based on certain conditions. Here's an example of an if statement in Markdown:

```markdown
# Conditional Statements

To use conditional statements, you can use the `if` statement followed by the condition and the code block:

```bash
if [ condition ]; then
    # code to execute if the condition is true
else
    # code to execute if the condition is false
fi

For example:

if [ $age -ge 18 ]; then
   

 echo "You are an adult."
else
    echo "You are a minor."
fi

## Loops

Loops allow you to repeat a block of code multiple times. Here's an example of a for loop in Markdown:

```markdown
# Loops

To use loops, you can use the `for` loop followed by the variable, the list of values, and the code block:

```bash
for variable in list; do
    # code to execute for each value
done

For example:

for fruit in apple banana cherry; do
    echo "I like $fruit"
done

## Functions

Functions allow you to define reusable blocks of code. Here's an example of defining and using a function in Markdown:

```markdown
# Functions

To define a function, use the following syntax:

```bash
function_name() {
    # code to execute
}

For example:

greet() {
    echo "Hello, $1!"
}

To call a function, use its name followed by any arguments:

greet "John"

## Conclusion

Congratulations! You've learned how to write basic shell scripts using Markdown. Shell scripting is a powerful way to automate tasks and improve your productivity. Explore more advanced features and commands to create more complex scripts. Happy scripting!
top 3 comments
sorted by: hot top controversial new old
[–] mtpunkty 2 points 2 years ago

Great guide, thanks!

[–] kinttach 1 points 2 years ago (1 children)

Are you showing how to mix Markdown with bash scripting? When I try your example it fails on the word “This” (from “This is my first shell script…”).

This would be a useful thing to have, but all I’ve found in the past are various hacks like using heredocs.

Would love to hear more technical details about how you are doing this.

[–] [email protected] 3 points 2 years ago

I was writing the tutorial in markdown for bash scripting. Somehow the format got messed up. Will fix the format when I can.