File Manager — это CLI-инструмент для анализа и управления файлами и директориями. Он помогает находить дубликаты файлов, анализировать использование дискового пространства и выполнять другие полезные операции.
- Убедитесь, что у вас установлен Go (версия 1.20+).
- Клонируйте репозиторий:
git clone https://github.com/SHCDevelops/file-manager.git
- Перейдите в директорию проекта:
cd file-manager
- Соберите проект:
go build -o file-manager
- Добавьте исполняемый файл в путь:
mv file-manager /usr/local/bin/
Теперь вы можете использовать команду file-manager
глобально.
Проект доступен через GitHub, вы можете установить его напрямую:
go install github.com/SHCDevelops/file-manager@latest
Эта команда сканирует указанную директорию и находит файлы с одинаковым содержимым.
file-manager find-duplicates [directory] [flags]
file-manager find-duplicates /path/to/directory --ignore ".git,temp"
Эта команда показывает самые большие файлы в указанной директории.
file-manager analyze-space [directory] [flags]
file-manager analyze-space /path/to/directory --top 10 --ignore "*.tmp"
Эта команда ищет файлы, соответствующие заданному шаблону.
file-manager search [pattern] [directory]
file-manager search "*.txt" /path/to/directory
Эта команда показывает детальную статистику по строкам кода для поддерживаемых языков программирования.
file-manager code-stats [directory] [flags]
Поддерживаемые языки:
- Go (.go)
- HTML (.html, .htm)
- CSS (.css)
- JavaScript (.js)
- TypeScript (.ts, .tsx)
Отображаемая статистика:
- Общее количество строк
- Количество строк комментариев
- Чистые строки кода (общее - комментарии)
- Процентное соотношение
file-manager code-stats ./myproject --ignore "vendor,node_modules"
Команда | Флаг | Описание |
---|---|---|
find-duplicates |
--ignore |
Список директорий или шаблонов для игнорирования (разделённых запятой). |
analyze-space |
--top |
Количество файлов для отображения (по умолчанию: 10). |
analyze-space |
--ignore |
Список директорий или шаблонов для игнорирования (разделённых запятой). |
code-stats |
--ignore |
Список директорий или шаблонов для игнорирования (разделённых запятой). |
code-stats |
--ignore-language |
Список языков для игнорирования (разделённых запятой) |
file-manager find-duplicates /path/to/directory --ignore ".git,temp"
file-manager analyze-space /path/to/directory --top 5 --ignore "*.tmp"
file-manager search "*.txt" /path/to/directory
file-manager code-stats ./src --ignore "tests,dist"
Пример вывода:
Code Statistics:
Go:
Total lines: 1520
Comments: 320 (21.1%)
Code lines: 1200 (78.9%)
JavaScript:
Total lines: 890
Comments: 178 (20.0%)
Code lines: 712 (80.0%)
- Go: Версия 1.20 или выше.
- Операционная система: Linux, macOS, Windows.
Создано с ❤️ SHCDevelops
Если у вас есть вопросы или предложения, создайте issue или отправьте pull request!
- Этот инструмент предназначен для личного использования и может быть адаптирован под ваши нужды.
- Для работы с большими директориями рекомендуется использовать флаг
--ignore
, чтобы ускорить процесс.