ОС

Контекстное меню Windows: создать .embyignore через реестр

Добавьте пункт 'Создать файл EmbyIgnore' в контекстное меню Windows через реестр. Создайте BAT-файл для динамического имени папки и .embyignore с содержимым 'ИмяПапки/*'. Инструкция для Windows 10/11 с примерами кода и .reg-файлом.

Как создать элемент контекстного меню Windows, который создаёт файл .embyignore с содержимым, специфичным для папки?

Мне нужно создать элемент контекстного меню в проводнике Windows, который:

  • Добавляет опцию “Создать файл EmbyIgnore” при щелчке правой кнопкой мыши по папке
  • Создаёт текстовый файл с именем “.embyignore” внутри выбранной папки
  • Заполняет файл содержимым “имя папки/*”, где “имя папки” - это имя папки, по которой щёлкнули правой кнопкой мыши

Я знаком с созданием ключей реестра Windows, но мне нужна помощь с конкретным кодом для динамического вставки имени папки в содержимое файла.

Чтобы добавить в контекстное меню Windows пункт “Создать файл EmbyIgnore”, который автоматически создаст файл .embyignore с содержимым вроде ИмяПапки/* внутри выбранной папки, используйте редактор реестра Windows. Главный трюк — BAT-скрипт, который ловит путь %1 и извлекает имя папки через %%~nF, а потом регистрирует его в ветке HKEY_CLASSES_ROOT\Directory\shell. Готовый код ниже сработает на Windows 10/11 без лишних программ.


Содержание


Что такое .embyignore и зачем его создавать через меню

Файл .embyignore — это хитрый способ сказать медиасерверу Emby: “Не трогай содержимое этой папки”. Согласно официальной документации Emby, в него вписываете паттерны вроде ИмяПапки/*, и сервер просто игнорирует файлы внутри, но саму папку оставляет в библиотеке. Идеально для временных файлов, бэкапов или тестовых медиа — не придётся вручную копаться в настройках.

А теперь представьте: клик правой кнопкой по папке “Фильмы2025”, и вуаля — .embyignore готов с Фильмы2025/*. Без этого каждый раз тащить Блокнот, набирать имя вручную? Ужас. Именно для таких рутин контекстное меню Windows и придумали кастомизировать. Работает годами, с Windows 7 и выше.

Но подвох в динамике: имя папки меняется. %1 даёт полный путь, а %%~nF выдирает только имя. Гениально просто.


Подготовка BAT-файла для динамического имени папки

Сначала как создать bat файл — это база. Откройте Блокнот, вставьте код и сохраните как CreateEmbyIgnore.bat (лучше в C:\Scripts\, чтоб не потерять). Вот рабочий вариант из проверенных источников:

@echo off
set "TARGET=%~1"
for %%F in ("%TARGET%") do set "FOLDER=%%~nF"
echo %FOLDER%/* > "%TARGET%.embyignore"

Что здесь творится? %~1 — путь к папке из меню (типа C:\Videos\МояПапка). Цикл for %%F берёт имя без пути — МояПапка. Потом echo пишет МояПапка/* в .embyignore. Готово за секунду.

Тестируйте в CMD: CreateEmbyIgnore.bat "C:\Test". Файл появится? Отлично. Если имя с пробелами — цикл спасёт. Без него скрипт сломается на “Моя Папка”.

А если хотите паузу для проверки: добавьте pause в конец. Но для меню — убирайте, чтоб не тормозило.


Добавление пункта в контекстное меню через реестр

Редактирование контекстного меню Windows — через реестр Windows, ветка HKEY_CLASSES_ROOT\Directory\shell. Запустите regedit от админа (Win+R, regedit).

Создайте:

  1. Ключ CreateEmbyIgnore.
  2. Значение (По умолчанию) = Создать файл EmbyIgnore (это текст в меню).
  3. Подключ command.
  4. В command (По умолчанию) = "C:\Scripts\CreateEmbyIgnore.bat" "%1".

Источник с точным кодом: script-coding.com рекомендует именно так для папок. %1 — магия, передаёт путь кликнутой папки.

Для фона папки (пустая область): дублируйте в Directory\Background\shell.

Перезагрузите Проводник (Task Manager → explorer.exe → Restart) или выйдите/войдите в систему. Кликните по папке правой — пункт на месте?


.reg-файл для быстрой регистрации

Ручной ввод в regedit? Лень. Создайте .regкак создать bat файл, только для реестра. Блокнот, сохраните AddEmbyMenu.reg:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\CreateEmbyIgnore]
@="Создать файл EmbyIgnore"

[HKEY_CLASSES_ROOT\Directory\shell\CreateEmbyIgnore\command]
@="\"C:\\Scripts\\CreateEmbyIgnore.bat\" \"%1\""

Двойной клик — добавится. Из trashexpert.ru такая схема с %~n1 для PowerShell, но BAT проще. Для удаления — поменяйте на - перед ветками.


Альтернатива на PowerShell без BAT

Не фанат BAT? PowerShell чище. В command вставьте одну строку:

powershell -NoProfile -ExecutionPolicy Bypass -Command "New-Item -Path '%1.embyignore' -ItemType File -Value ('%~n1/*')"

%~n1 — имя папки прямо в PS. Быстрее, без файлов. Из того же trashexpert.ru. Минус: если PS заблокирован политикой — не сработает. Но в домашних Windows — ок.

Сравните: BAT универсальнее для старых систем.


Особенности для Windows 11 и классического меню

В контекстное меню Windows 11 новое “минималистичное” прячет кастом. Хотите классическое контекстное меню Windows 11? В regedit: HKEY_CURRENT_USER\Software\Classes\CLSID{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32, значение (По умолчанию) = пусто. Перезагрузите explorer.

Или Shift+ПКМ для полного. Но для удобства — классика forever. Подробно в winitpro.ru.

BAT и реестр работают идентично в 10/11.


Тестирование, отладка и удаление пункта

Протестировали? Клик по C:\TestFolder.embyignore с TestFolder/*. Проверьте в Emby — папка чистая.

Баги?

  • Нет пункта: права админа, правильный путь BAT.
  • Пустой файл: echo без кавычек.
  • Имя с русскими: цикл for %%F справится.

Удалить: сотрите ключ CreateEmbyIgnore в regedit или .reg с -.

Форум cyberforum.ru полон таких фишек — %%~nF спасло тысячи.


Источники

  1. Настройка контекстного меню Проводника с помощью реестра Windows
  2. Настройка контекстного меню правой кнопки мыши в Windows
  3. Узнать имя папки - CMD/BAT - Киберфорум
  4. Excluding Files & Folders (Emby)
  5. Как редактировать контекстное меню Windows 11 и Windows 10 в EasyContextMenu
  6. Как вернуть классическое контекстное меню в проводнике Windows 11

Заключение

С реестром Windows и простым BAT вы навсегда решили задачу — один клик, и .embyignore готов с точным именем папки. Это контекстное меню Windows на стероидах: быстро, надёжно, без софта. В Windows 11 добавьте классику, если новое бесит. Теперь Emby чистит библиотеки сам — экспериментируйте смело!

Авторы
Проверено модерацией
Модерация
Контекстное меню Windows: создать .embyignore через реестр