Skip to content

ranjithdb/30daysofbash

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

47 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

30daysofbash

Welcome to 30 Days of Bash! This repository is a collection of Bash scripts created over the course of 30 days, each day focusing on a new task or system administration functionality. These scripts cover a wide range of topics, from system monitoring and file management to network security and automation.

Table of Contents

  1. Day 1 - System Information
  2. Day 2 - Cron Job
  3. Day 3 - Directory Backup
  4. Day 4 - File Backup
  5. Day 5 - Package Installer
  6. Day 6 - Log Terminal Output
  7. Day 7 - Auto-Update System
  8. Day 8 - Service Status Checker
  9. Day 9 - Integrity Checker
  10. Day 10 - Manage User Accounts
  11. Day 11 - Disk Usage Monitor
  12. Day 12 - Network Connectivity Checker
  13. Day 13 - Git Repository Cloner
  14. Day 14 - Firewall Log Checker
  15. Day 15 - System Health Logger
  16. Day 16 - Setup Development Environment
  17. Day 17 - File Organizer
  18. Day 18 - SSH Login History
  19. Day 19 - Cron Job Scheduler
  20. Day 20 - Password Generator
  21. Day 21 - Log Analyzer
  22. Day 22 - File Difference Checker
  23. Day 23 - Markdown Note-taking
  24. Day 24 - Email Alerts
  25. Day 25 - Directory Size Analyzer
  26. Day 26 - Disk Cleaner
  27. Day 27 - Website Blocker
  28. Day 28 - Port Scanner
  29. Day 29 - Web Page Downloader
  30. Day 30 - Remote Deployment Tool

Day 1 - System Information

Displays system information such as hostname, OS details, uptime, and memory usage.

Day 2 - Cron Job

A tool to add, list cron jobs.

Day 3 - Directory Backup

Creates a backup of specified directories.

Day 4 - File Backup

Backs up individual files.

Day 5 - Package Installer

Installs software packages automatically.

Day 6 - Log Terminal Output

Logs terminal session output to a file.

Day 7 - Auto-Update System

Automatically updates the system packages.

Day 8 - Service Status Checker

Checks and restarts essential services if they stop.

Day 9 - Integrity Checker

Checks for file integrity using checksums.

Day 10 - Manage User Accounts

Adds, modifies, and deletes users and groups.

Day 11 - Disk Usage Monitor

Monitors disk usage and alerts when usage crosses a threshold.

Day 12 - Network Connectivity Checker

Pings a list of servers and reports any unresponsive ones.

Day 13 - Git Repository Cloner

Clones multiple repositories from a configuration file.

Day 14 - Firewall Log Checker

Outputs current firewall rules and logs any changes.

Day 15 - System Health Logger

Logs system health metrics like CPU, memory, disk, and network usage.

Day 16 - Setup Development Environment

Installs programming languages and tools required for development.

Day 17 - File Organizer

Organizes files into subdirectories based on file type.

Day 18 - SSH Login History

Tracks and logs SSH login attempts.

Day 19 - Cron Job Scheduler

Adds, lists, and removes cron jobs for automation.

Day 20 - Password Generator

Generates random passwords based on specified criteria.

Day 21 - Log Analyzer

Parses and extracts useful information from log files.

Day 22 - File Difference Checker

Compares two files and highlights differences.

Day 23 - Markdown Note-taking

Allows creating and managing Markdown notes from the command line.

Day 24 - Email Alerts

Sends email alerts based on certain conditions, like low disk space.

Day 25 - Directory Size Analyzer

Analyzes the size of directories and files within them.

Day 26 - Disk Cleaner

Deletes temporary files and unused data to free up space.

Day 27 - Website Blocker

Blocks access to specified websites by modifying the hosts file.

Day 28 - Port Scanner

Scans open ports on a server for security analysis.

Day 29 - Web Page Downloader

Downloads a webpage and its assets (e.g., CSS, images) locally.

Day 30 - Remote Deployment Tool

Deploys an application to a remote server, automating file uploads and service restarts.


How to Use

Each script is designed to be run from the command line. Some scripts may require sudo permissions, particularly those that modify system files, manage services, or install packages.

About

Collection of Bash scripts created over the course of 30 days

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages