How To

Bash Range And Sequence Expression Explained With Examples

Introduction

Bash range and sequence expressions are useful when you want to generate a list of numbers or characters automatically. Instead of writing values one by one, you can use a short Bash syntax to create a sequence. This is very helpful in Bash scripting, especially when working with loops, file names, backups, automation tasks, and cybersecurity scripts.

If you are learning Bash scripting, understanding range expressions will help you write shorter and cleaner scripts. You can use them to count numbers, repeat tasks, create multiple files, scan IP addresses, or process numbered logs.

What Is A Bash Range?

A Bash range is a sequence of numbers or letters written inside curly braces {}.

Basic syntax:

{start..end}

Example:

echo {1..5}

Output:

1 2 3 4 5

This command prints numbers from 1 to 5.

Bash Number Range Example

Create a Bash script:

nano range-example.sh

Add the following code:

#!/bin/bashfor number in {1..5}do    echo "Number: $number"done

Save and run the script:

chmod +x range-example.sh./range-example.sh

Output:

Number: 1Number: 2Number: 3Number: 4Number: 5

This is useful when you want to repeat a command for a fixed number of times.

Bash Alphabet Range Example

Bash can also create letter ranges.

#!/bin/bashfor letter in {a..e}do    echo "Letter: $letter"done

Output:

Letter: aLetter: bLetter: cLetter: dLetter: e

You can also use uppercase letters:

echo {A..Z}

Bash Range With Step Value

You can use a step value to skip numbers.

Syntax:

{start..end..step}

Example:

echo {1..10..2}

Output:

1 3 5 7 9

This prints numbers from 1 to 10 with a step of 2.

Another example:

#!/bin/bashfor number in {2..10..2}do    echo "Even number: $number"done

Create Multiple Files Using Bash Range

Range expressions are useful for creating multiple files quickly.

touch file{1..5}.txt

This creates:

file1.txt file2.txt file3.txt file4.txt file5.txt

You can check them using:

ls file*.txt

Cybersecurity Example: Ping Multiple IP Addresses

You can use Bash range expressions to test multiple IP addresses.

#!/bin/bashfor ip in 192.168.1.{1..5}do    echo "Checking $ip"    ping -c 1 "$ip"done

This script pings IP addresses from 192.168.1.1 to 192.168.1.5.

Conclusion

Bash range and sequence expressions are simple but powerful. They help you generate numbers, letters, file names, and IP ranges quickly. They are commonly used with for loops in Bash scripts.

For beginners, learning Bash range syntax is important because it makes scripts shorter, cleaner, and easier to manage. You can use it for Linux automation, file creation, backups, network checks, and cybersecurity scripting.

Cyber Defence

Recent Posts

What Is a Data Protection Platform and Why Your Organization Needs One

A data protection platform is a unified system that helps organizations discover, classify, monitor, and…

20 hours ago

How Swiss Privacy Rules Affect AI Companies Under GDPR

AI companies operating in or around Switzerland face a compliance challenge that most legal teams…

2 days ago

Swiss FADP vs EU GDPR: Key Differences for AI and Data Privacy

Two major data privacy laws now govern how organizations handle personal data across Europe; the…

3 days ago

Kali Linux Commands Cheat Sheet: Complete Quick Reference

This cheat sheet covers the essential Kali Linux commands every pentester and ethical hacker uses…

1 month ago

What I Wish I Knew Before Learning Malware Analysis and Reverse Engineering

When I first started learning malware analysis and reverse engineering, I thought the hardest part…

1 month ago

git fetch vs git pull: How They Work and When to Use Each

Both git fetch and git pull talk to a remote repository, but they do very different things to your…

2 months ago