Skip to content

πŸ“š A simple Library Management System created using Bash scripting to manage books in a library.<br> πŸ“„ Features include adding, updating, deleting, searching, issuing, and displaying books.

Notifications You must be signed in to change notification settings

Riya-Kharade/Library-Management-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

15 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“šLibrary-Management-System



A simple and interactive Library Management System built using Bash scripting. This system is designed to automate the management of a library’s book collection, supporting both Admin and Student logins, making it easy to manage books, track users, and maintain records β€” all through the Linux terminal.

🌿 Project Overview

This project eliminates manual efforts in maintaining library records. It’s lightweight, terminal-based, and best suited for small libraries, college projects, or personal use.


πŸ” User Roles

πŸ‘¨β€πŸ’Ό Admin Login

Admin has full control over the system and can perform all book-related operations.

Admin Menu Options:

  • Insert a book πŸ“˜
  • Update a book ✏️
  • Delete a book ❌
  • Search a book by ID πŸ”
  • Display all books πŸ“š
  • Display books alphabetically (A-Z) πŸ” 
  • Issue a book to a student 🎯
  • Logout πŸ”

πŸ‘©β€πŸŽ“ Student Login

Students can view and search available books, and track issued books.

Student Menu Options:

  • Enter student details 🧾
  • Display available books πŸ“š
  • Search for a book πŸ”
  • View issued books πŸ“¦
  • Logout πŸ”

🌎 Features

Feature Description
Insert Book Add books with ID, Title, Author, Publisher, Year, and Copies.
Update Book Modify book details or update the number of copies.
Delete Book Remove books that are no longer available.
Search Book by ID Quickly locate a book using its unique ID.
Display All Books View all book entries in a neat table format.
Sort Books A-Z Alphabetically arrange books by title.
Issue Book Issue a book to a student and reduce the available count.
Track Issued Books Students can see books they've been issued.
Student Details Maintain a record of student information.

πŸ”§ Technologies Used

  • Bash Scripting – Core of the system
  • Linux Terminal – Runs directly in the shell, no external dependencies
  • Text Files – Used to store book and student data

🎯 Purpose

This system helps:

  • Automate tedious manual work in libraries
  • Reduce human errors in tracking issued books
  • Make book management easier for librarians and students
  • Serve as a practical project for learning shell scripting

πŸ“ How to Run

βœ… Prerequisites

  • A Linux-based OS (Ubuntu, CentOS, etc.)
  • Bash installed (default in most Linux systems)
  • Terminal access

πŸš€ Steps to Run

# 1. Clone the Repository
git clone https://github.com/riya-kharade/Library-Management-System.git

# 2. Go to Project Directory
cd Library-Management-System

# 3. Make Script Executable
chmod +x Library-Management-System.sh

# 4. Run the Script
./Library-Management-System.sh

🧭 Interaction Flow

  • On launching the script, select either Admin or Student login.
  • Use the interactive menu to access features.
  • Data is stored locally as .txt files for simplicity and portability.

πŸ’Ύ Data Handling

  • Book and student data is stored using text files in the same directory.
  • All operations update the file automatically.
  • No external database required.

πŸ—‚ File Structure

πŸ“ library-management-system/
β”œβ”€β”€ library.sh                   # Earlier script version
β”œβ”€β”€ library_management_system.sh # Final working script
β”œβ”€β”€ books.txt                    # Book data file
β”œβ”€β”€ students.txt                 # Student records
└── README.md                    # Project documentation

πŸ“© Contact

If you have suggestions or questions, feel free to reach out:


About

πŸ“š A simple Library Management System created using Bash scripting to manage books in a library.<br> πŸ“„ Features include adding, updating, deleting, searching, issuing, and displaying books.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages