0
0
Bash Scriptingscripting~5 mins

Report generation script in Bash Scripting

Choose your learning style9 modes available
Introduction

A report generation script helps you collect and organize information automatically. It saves time and avoids mistakes compared to doing it by hand.

You want to summarize system status daily and save it to a file.
You need to gather user activity logs and create a readable report.
You want to check disk usage and email a report to your team.
You want to automate monthly sales data collection and formatting.
You want to quickly create a report from multiple files without manual copying.
Syntax
Bash Scripting
#!/bin/bash

# Commands to collect data
# Commands to format data
# Commands to save or display report

Start your script with #!/bin/bash to tell the system it is a bash script.

Use commands like echo, cat, and system tools to gather and format data.

Examples
This script prints a simple report with the current date and disk usage.
Bash Scripting
#!/bin/bash

echo "Report for $(date)"
echo "Disk usage:"
df -h
This script saves the list of logged-in users to a file and confirms it.
Bash Scripting
#!/bin/bash

users > users.txt
echo "User list saved to users.txt"
This script collects system uptime and memory info, saves it to a file, and notifies the user.
Bash Scripting
#!/bin/bash

uptime > report.txt
free -h >> report.txt
echo "System report created in report.txt"
Sample Program

This script creates a file named system_report.txt. It adds the current date, disk usage, memory usage, and logged-in users to the file. Finally, it tells you where the report is saved.

Bash Scripting
#!/bin/bash

# Simple report generation script

REPORT_FILE="system_report.txt"

echo "System Report - $(date)" > "$REPORT_FILE"
echo "-------------------------" >> "$REPORT_FILE"
echo "" >> "$REPORT_FILE"
echo "Disk Usage:" >> "$REPORT_FILE"
df -h >> "$REPORT_FILE"
echo "" >> "$REPORT_FILE"
echo "Memory Usage:" >> "$REPORT_FILE"
free -h >> "$REPORT_FILE"
echo "" >> "$REPORT_FILE"
echo "Logged In Users:" >> "$REPORT_FILE"
who >> "$REPORT_FILE"

echo "Report saved to $REPORT_FILE"
OutputSuccess
Important Notes

Make sure your script file has execute permission: chmod +x script.sh.

Use > filename to create or overwrite a file, and >> to add to it.

Test your script step-by-step to check each part works before combining.

Summary

A report generation script automates collecting and saving information.

Use simple bash commands to gather data and write it to a file.

Always start with #!/bin/bash and give your script execute permission.