Skip to content

About

Консольная программа для очистки временных файлов(кеша) на компьютере

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

🧹 CacheCleaner

Консольная утилита для безопасной и эффективной очистки временных файлов и кеша на компьютере.

Language Build Platform License Status


📌 О проекте

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 CacheCleaner

Сборка через CMake

cmake -B build -G "MinGW Makefiles"
cmake --build build

После сборки исполняемый файл CacheCleaner появится в папке build/ (или build/Release/ в зависимости от генератора).

Установка (Windows)

Готовый установщик можно собрать с помощью 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 — это поможет в его развитии!

🤖Примечания (ИИ)

ИИ участвовал лишь в создании данной документации, весь код от и до написан самостоятельно

About

Консольная программа для очистки временных файлов(кеша) на компьютере

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages