FileVault is a secure file management CLI tool designed for programmers to store and manage their files efficiently. It allows users to upload files to designated servers based on file types, while keeping track of their uploaded files in a local SQLite database.
- Secure File Uploads: Upload files to specific servers based on their types (images, documents, code files).
- Local Database Management: Keep track of uploaded files in an SQLite database.
- Ping Servers: Check the availability of servers before uploading.
- User Authentication: Secure access to the file management system.
- Bash shell
- SQLite3
- Curl
- Optional:
figlet
andlolcat
for a colorful banner
- Clone the repository:
https://github.com/the-ai-developer/L2CFileVault.git cd L2C-sFileVault
Make the script executable:
chmod +x FileVault.sh
Run the script:
./FileVault.sh
The script checks for the existence of a SQLite database at ~/file_registry.db. If it doesn't exist, it creates a new database with a files table.
- The script determines the type of file being uploaded based on its extension.
- It pings the relevant server to check if itβs reachable before proceeding with the upload.
- If the server is reachable, the file is uploaded, and details are logged into the SQLite database.
Users are prompted to enter a password before they can perform any file management operations.
The script allows users to upload various file types, categorized into:
All uploaded files are logged in the SQLite database with the following fields:
Below are sample images demonstrating the CLI interface and file upload process.
If you want to contribute to this project, please fork the repository and submit a pull request. For any suggestions or issues, feel free to open an issue in the repository.
Inspired by various file management tools and motivated to create a secure and efficient solution for programmers.