Как найти и применять команды shell для ускорения работы
Вы, наверное, знакомы с командами shell, которые позволяют открывать различные системные и пользовательские расположения. Например, команда shell:Libraries в Windows 7 открывает библиотеки. Я предлагаю вам посмотреть, откуда они берутся и как их применять для ускорения работы.
Чем удобны команды
Поскольку тема явно не новая, я предлагаю вам взглянуть на ее практическое применение в этой и следующей статьях. С помощью команд shell вы можете:
- быстро переходить к папкам, вводя их в поиск меню «Пуск», диалоговое окно «Выполнить» (WIN+R), адресную строку проводника
- создавать ярлыки к часто используемым расположениям
- использовать в реестре в качестве путей для команд
Запуск элементов ActiveX
Сначала я расскажу о реже упоминаемом источнике команд, а заодно и менее распространенном (но иногда очень нужном) способе их запуска.
содержит список апплетов ActiveX, которые можно определить по наличию подраздела ShellFolder, Видите словесную связь с командой shell? Название подраздела реестра (GUID) можно использовать в качестве кода запуска, поставив после команды shell три двоеточия. Например, команда:
открывает папку Недавние места. Она отличается от папки Недавние документы тем, что в ней не отображаются недавно открытые файлы, а только список мест (папок, поисков, элементов панели управления), которые вы недавно открывали в проводнике и диалоговых окнах. К этой папке мы вернемся в следующей статье, в рамках рассказа о тонкой настройке окон «Открыть» и «Сохранить как».
Проводник Windows (explorer) понимает команды shell в качестве параметров командной строки, что можно использовать для команд в реестре. Так, в контекстные меню папки, рабочего стола и компьютера можно добавлять команды для открытия элементов панели управления, системных и пользовательских папок.
Получение списка элементов ActiveXПолучить список элементов проще всего с утилитой CLSID Dump. Она как раз и фильтрует нужный раздел реестра, извлекая сведения обо всех элементах ShellFolder и отображая список апплетов ActiveX.
С помощью утилиты очень удобно находить нужные элементы, поскольку она отображает как английское, так и русское название, а также позволяет отсортировать их по алфавиту. Элемент можно сразу запустить и посмотреть, и если он полезен, тут же создать ярлык, не прилагая усилий. Вы также можете скопировать GUID в буфер обмена, что пригодится при использовании команд в реестре. Наконец, можно экспортировать список в HTML.
Переход в известные папки
Более известный способ запуск команд основан на использовании кодовых слов, т.е. текстовых идентификаторов папок, которые понятны системе. Например, избранное проводника можно создать открыть так.
Владея английским, кодовые слова легче запомнить, конечно, но зачастую проще посмотреть их в справочнике ниже. Команды удобно использовать для:
- быстрого перехода в скрытую или системную папку, если их отображение отключено в проводнике
- объяснений, как добраться до какой-либо папки, что экономит время при оказании помощи (удобство, например, заключается в том, что нужная пользовательская папка открывается вне зависимости от имени учетной записи)
- создания ярлыков к часто используемым папкам
Так, для создания ярлыка, щелкните правой кнопкой мыши на рабочем столе и выберите Создать — Ярлык. Затем введите команду:
Все кодовые слова для команд можно найти в разделе реестра
Заглянув в его подразделы, можно подметить два момента:
- значение параметра Name является кодовым словом для запуска
- некоторые подразделы содержат параметр ParsingName, и его значение также можно использовать для запуска
Во втором случае мы как раз имеем дело с элементами ActiveX, а GUID в значении параметра указывает на подраздел в HKLM\SOFTWARE\Classes\CLSID, o котором шла речь выше. Теперь вы видите, почему при запуске команд путем вызова GUID используется дополнительная пара двоеточий.
Список известных папок для команд shellНиже приводится список этих команд для Windows Vista и Windows 7:
- выделенные красным команды работают только в Windows 7
- * перед путем означает, что папка является скрытой, т.е. не видна в проводнике, если отключено отображение скрытых файлов и папок (что, впрочем, не мешает переходить в нее командой)
Об авторе
Вадим - владелец этого блога, и почти все записи здесь вышли из-под его пера. Подробности о блоге и авторе здесь. Поддержать автора вы можете тут.
Вас также может заинтересовать:Я в Telegram
Подпишитесь на канал и читайте интересные записи чаще! Есть вопросы? Задайте их в чате.
комментариев 19Надо в грид добавить ещё один столбец, с отображением Shell. command И, наконец, привести утилиту в божеский вид. Делов на 5 минут
hb860, кстати, спасибо еще раз за утилиту :)
hb860: Надо в грид добавить ещё один столбец, с отображением Shell. command
А смысл? Все GUIDы ActiveX и так уже перечислены в утилите.
Интересно, что некоторые GUIDы известных расположений можно использовать в качестве параметра командной строки explorer.exe напрямую, без «прокладки» shell. Например, Компьютер открывает команда:
Аналогично можно открыть, например, корзину, а вот команда для IE:
Эти и еще несколько GUID’ов были «известны» еще проводнику Windows XP, но в Windows 7 часть расположений упразднена.
Вот смысл я вижу такой Столбцы My computer shell::computer ————— Shell:profile я открываю так Пуск-Выполнить — . — Enter Профиль пользователя — текущая папка проводника в Shell режиме
hb860, возможно, что не все папки из раздела FolderDescriptions имеют эквивалентную GUID-команду. По кр. мере конкретный GUID неочевиден, если нет параметра ParsingName.
Ту программу что вы предлагаете CLSID Dump Вы уже извините за прямоту не программа а поделка какаято
alex, если у вас есть конкретные предложения по улучшению программы, либо вы хотите сообщить о баге, свяжитесь с ее автором (сайт указан).
Если у вас есть конкретные предложения по извлечению CLSIDs другим путем, я весь внимание.
Vadim Sterkin, подскажите, пожалуйста, почему CSLID Dump запускается под Windows 8.1, x64 с ошибкой? Автору утилиты я отписался, но может вам известно решение.