A Bash-based CLI utility for recording daily tasks with timestamps and categories through a simple, interactive terminal interface.
Daily Task Logger is a beginner-friendly Bash project that demonstrates how shell scripting can be used to build a practical command-line utility.
The application allows users to record tasks throughout the day, organize them by category, and review their daily activity directly from the terminal.
The project is designed as a hands-on learning exercise while also demonstrating fundamental Bash, Linux, and GitHub skills.
- Timestamped task logging
- Task categories: Work, Personal, Study, and Other
- Interactive, menu-driven terminal interface
- Color-coded terminal output
- View today's task log
- Automatic date-based log files
- Demonstrates core Bash scripting concepts
The project can be run on:
- macOS
- Linux
- Windows using WSL
Required:
- Bash
- Git
Clone the repository:
git clone https://github.com/TechWithHer/Daily-Task-Logger.git
cd Daily-Task-LoggerMake the script executable:
chmod +x task_logger.sh./task_logger.shThe script opens an interactive menu where you can log tasks, view today's log, or exit the application.
Daily logs are stored in:
~/log_directory/YYYY-MM-DD.log
Example:
[10:02:12][Work] Updated README.md
[11:45:30][Personal] Called mom
[13:20:47][Study] Learned about Bash functions
Each entry contains:
- Timestamp — when the task was recorded
- Category — the type of task
- Task — the description entered by the user
- Bash — Shell scripting and application logic
- ANSI Escape Sequences — Terminal colors and formatting
- Unix/Linux Core Utilities —
read,date,echo,mkdir, and other standard utilities - Git & GitHub — Version control and project management
This project provides hands-on experience with:
- Bash variables
- User input and output
- Conditional statements
- Loops
- Functions
- File and directory handling
- File I/O
- String formatting
- Command-line utilities
- Terminal formatting and colors
- Git and GitHub project management
Daily-Task-Logger/
├── task_logger.sh # Main Bash script
├── README.md # Project documentation
├── .gitignore # Files and directories excluded from Git
├── LICENSE # MIT License
This project is licensed under the MIT License.
Contributions, suggestions, and improvements are welcome.
If you have an idea for improving the project, feel free to open an issue or submit a pull request.
This project is part of the DevOps Learning Journey by TechWithHer.
Explore the complete course and project series:
