Collect ZIP, RAR, 7z, and tar archives into one folder with a simple multilingual GUI/CLI.
Built with AI coding models. Designed from real workflow problems.
Archive Collector is a small local tool that scans a folder for archive files and collects them into one destination folder. It is useful when downloads, backups, or project folders contain archives scattered across many subfolders.
Download source archives and future packaged builds from GitHub Releases, or run directly from this repository with Python.
- GUI and CLI modes
- Copy or move archive files
- Recursive scanning, with an option to scan only the top level
- Automatic duplicate-name handling
- Unicode paths and filenames
- English by default, with built-in language files for Chinese, French, German, and Japanese
- Easy community translations through
locales/<language-code>.json
- Python 3.10 or newer
- Tkinter, which is included with most standard Python installers
.zip, .rar, .7z, .tar, .gz, .bz2, .xz, .zst, .tgz, .tbz2, .txz, .tar.gz, .tar.bz2, .tar.xz, .tar.zst
You can override the list with --extensions.
On Windows, double-click launch.bat to open the GUI.
Open the GUI from a terminal:
python archive_collector.py --guiRun in CLI mode:
python archive_collector.py "D:\Downloads" "D:\Archives" --cliMove files instead of copying them:
python archive_collector.py "D:\Downloads" "D:\Archives" --cli --moveScan only the top-level source folder:
python archive_collector.py "D:\Downloads" "D:\Archives" --cli --flatUse custom extensions:
python archive_collector.py "D:\Downloads" "D:\Archives" --cli --extensions ".zip,.rar,.7z"Start with another language:
python archive_collector.py --gui --lang ja
python archive_collector.py "D:\Downloads" "D:\Archives" --cli --lang deList available languages:
python archive_collector.py --list-languages- Copy
locales/en.jsontolocales/<language-code>.json, for examplelocales/es.json. - Translate the values, but keep the keys unchanged.
- Keep placeholders such as
{path},{found}, and{errors}exactly as they are. - Run
python archive_collector.py --list-languagesand confirm the new language appears.
English is the fallback language. Missing keys in any translation file automatically fall back to English.
MIT. See LICENSE.
