Команда реестра для пункта контекстного меню для копирования имени папки

Команда реестра для пункта контекстного меню для копирования имени папки

Мне часто нужно быстро скопировать имя папки в Windows 7, поэтому я пытаюсь создать эквивалент элемента, Copy as pathкоторый появляется в расширенных контекстных меню (т. е. при нажатии Shift+ Right Click), который будет копировать в буфер обмена только имя выбранной папки.

Я создал раздел реестра по адресу:

HKEY_CLASSES_ROOT\Directory\shell\Copy folder name\command

...где находятся все мои аналогичные дополнения к контекстному меню для папок, и это можно увидеть здесь:

введите описание изображения здесь

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

for %* in (.) do set FolderName=%~nx* && echo %FolderName%| clip

Этот код работает в командной строке именно так, как и ожидалось.

Добавление cmd /cк нему префикса, необходимого для запуска экземпляра CMD из реестра, дает следующее:

cmd /c for %* in (.) do set FolderName=%~nx* && echo %FolderName%| clip

введите описание изображения здесь

Однако, поместив это в данные значения Defaultстроки в \Copy folder name\commandключе, а затем щелкнув правой кнопкой мыши папку и выбравКопировать имя папкине работает.

Заключение в кавычки также ничего не даст:

cmd /c "for %* in (.) do set FolderName=%~nx* && echo %FolderName%| clip"

Что я здесь упускаю?

Связанный контент