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.
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.
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 π
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 π
| 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. |
- 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
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
- A Linux-based OS (Ubuntu, CentOS, etc.)
- Bash installed (default in most Linux systems)
- Terminal access
# 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- On launching the script, select either Admin or Student login.
- Use the interactive menu to access features.
- Data is stored locally as
.txtfiles for simplicity and portability.
- Book and student data is stored using text files in the same directory.
- All operations update the file automatically.
- No external database required.
π 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
If you have suggestions or questions, feel free to reach out:
- π§ Email: riyasunilkharade.vit@gmail.com
- π GitHub: riya-kharade