Консольная утилита для безопасной и эффективной очистки временных файлов и кеша на компьютере.
CacheCleaner — это учебный проект, разработанный в рамках курсовой/дипломной работы в колледже. Программа предназначена для очистки временных файлов, которые со временем могут занимать значительный объём дискового пространства и замедлять работу системы.
Утилита работает в консольном режиме, использует гибкую систему пресетов (JSON) и поддерживает переменные окружения (например, $WIN_USERS$), что позволяет адаптировать очистку под разных пользователей и конфигурации системы.
📄 Полное описание проекта, включая преимущества и обоснование, доступно в файле
documents/CollegeProjectDescription.docx.
- 🗂️ Очистка временных файлов и кеша по предварительно заданным путям.
- ⚙️ Гибкая настройка через JSON-пресеты (
presets.json) и пользовательские пути (UserPaths.json). - 🌐 Поддержка переменных окружения (например,
$WIN_USERS$→%USERPROFILE%) для динамического формирования путей. - 🧪 Режим «сухого прогона» (
dry-run) — сканирование без фактического удаления файлов (запланировано / частично реализовано). - 🖥️ Кроссплатформенная сборка через CMake (основная целевая платформа — Windows).
- 📦 Готовый установщик на базе INNO Setup (
setup.iss).
| Компонент | Назначение |
|---|---|
| C++ | Основной язык разработки |
| CMake | Система сборки |
| JSON | Формат конфигурационных файлов (пресеты, пользовательские пути) |
| INNO Setup | Создание установочного пакета для Windows |
| GitHub Actions | CI / автоматическая сборка |
- Компилятор с поддержкой C++17 (MSVC, MinGW, GCC, Clang)
- CMake версии 3.15 или выше
- (Опционально) INNO Setup — для сборки установщика
git clone --recursive https://github.com/SG123it/CacheCleaner.git
cd CacheCleanercmake -B build -G "MinGW Makefiles"
cmake --build buildПосле сборки исполняемый файл CacheCleaner появится в папке build/ (или build/Release/ в зависимости от генератора).
Готовый установщик можно собрать с помощью INNO Setup, открыв файл setup.iss. Готовый дистрибутив будет создан в папке Output/.
Запустите программу из командной строки:
CacheCleaner.exe| Аргумент | Описание |
|---|---|
--dry-run |
Только сканирование и вывод списка файлов без удаления (в разработке) |
--help |
Показать справку |
documents/presets.json— основной файл с предустановленными путями для очистки.UserPaths.json— пользовательский файл с дополнительными путями (создаётся автоматически или вручную).
Пример UserPaths.json:
{
"Paths": [
"C:\\Users\\%USERNAME%\\AppData\\Local\\Temp",
"C:\\Windows\\Temp"
]
}CacheCleaner/
├── .github/workflows/ # CI-конфигурация GitHub Actions
├── dependencies/ # Внешние зависимости
├── docs/ # Документация и презентация
├── header/ # Заголовочные файлы (.h/.hpp)
├── include/ # Подключаемые библиотеки
├── src/ # Исходный код (.cpp)
├── CMakeLists.txt # Основной файл сборки
├── setup.iss # Скрипт установщика INNO Setup
├── readmeDEV.md # Заметки для разработчиков
└── TODO.MD # План развития проекта
Проект распространяется под лицензией MIT. Подробности — в файле licence.md.
SG123it Студент колледжа · GitHub: @SG123it
⭐ Если проект оказался полезным, поставьте звезду на GitHub — это поможет в его развитии!
ИИ участвовал лишь в создании данной документации, весь код от и до написан самостоятельно