Skip to main content

Introduction

GDrive Ingest is an ultimate cloud uploader that combines powerful download capabilities with intelligent file organization and seamless Google Drive integration. It features an interactive CLI with arrow key navigation, live progress tracking, and smart music organization.

Key Features

Interactive Folder Browser

Navigate Google Drive folders with arrow keys (↑/↓/→/←) in a beautiful terminal UI

Live Progress Tracking

Real-time download and upload progress bars with percentage indicators

Smart Music Organization

Automatic organization by Artist/Album/Year with auto-extracted cover art

Telegram Support

Download from public and private Telegram channels using Telethon API

Duplicate Detection

Prevent re-uploading files with MD5 checksum verification

Metadata Cleaning

Automatically remove website tags and spam from music metadata

How It Works

1

Download

Files are downloaded with live progress bars. Supports HTTP/HTTPS URLs and Telegram links.
2

Extract & Analyze

ZIP files can be extracted. Music files get metadata extracted (artist, album, title, year).
3

Organize

Files are automatically categorized:
  • MusicArtist/Album (Year)/
  • ImagesImages/
  • VideosVideos/
  • DocumentsDocs/
  • ArchivesFolders/archive-name/
4

Upload

Files upload to Google Drive with progress indicators and automatic duplicate detection.

Quick Start Example

# Browse folders with arrow keys
./gdrive_ingest.sh https://example.com/song.mp3

File Organization

Music Files

Music files are intelligently organized with metadata extraction:
Music/
└── Artist Name/
    └── Album Title (Year)/
        ├── 01 - Track.mp3
        ├── 02 - Another Track.mp3
        └── cover.jpg
Features:
  • Extracts artist, album, title, and year from ID3 tags
  • Cleans metadata to remove website spam (HipHopKit.com, Audiomack.com, etc.)
  • Auto-extracts embedded cover art
  • Prompts before uploading to existing album folders

Other Files

.jpg, .png, .gif, .webp, .svg, .bmpImages/
.mp4, .mkv, .avi, .mov, .wmv, .flvVideos/
.pdf, .txt, .docx, .xlsx, .pptxDocs/
ZIP files can be extracted to Folders/archive-name/

Multi-URL Support

The script accepts URLs in multiple formats:
./gdrive_ingest.sh url1.mp3 url2.zip url3.mp4

Command-Line Options

OptionDescriptionExample
-h, --helpShow help message./gdrive_ingest.sh --help
-d, --debugDebug mode (dry-run)./gdrive_ingest.sh --debug url.mp3
-f, --folder <name>Destination folder./gdrive_ingest.sh --folder "Music" url.mp3
-j, --json <file>Load URLs from JSON./gdrive_ingest.sh --json urls.json

Requirements

Core Dependencies (Required)

sudo apt install bash curl jq ffmpeg

Optional Dependencies

For Telegram support:
pip install telethon
Without ffmpeg/ffprobe, music files will still upload but won’t be organized by artist/album.

What’s Next?

Setup Guide

Configure the script with your credentials

Google Drive API

Set up Google Drive API access

Telegram Integration

Enable Telegram downloads

Usage Examples

Real-world usage patterns

Build docs developers (and LLMs) love