Ответы:
findstr /ism notepad.exe \*.lnk
findstr.exe поставляется в комплекте с Windows начиная с XP, если не раньше. Он живет в c: \ windows \ system32.
notepad.exe является целью ярлыка, замените его на нужный вам исполняемый файл.
\ *. lnk неявно разделяется на две части: «\» указывает корень поиска и «* .lnk» указывает файлы для поиска.
\*.lnk
на "c:\Program Files\*.lnk"
. Если путь с пробелами находится в корневом каталоге поиска, но не является частью командной строки, кавычки не нужны, но все же разрешены.
/C:
например, Eg findstr /ism /C:"note pad.exe" \*.lnk
. /C:
позволяет буквальный поиск. В противном случае пространства рассматриваются как операторы or.
Вы можете искать * .lnk файлы, которые содержат путь или имя исполняемого файла.
Например: ищите файлы * .lnk, которые содержат notepad.exe
Я пытался использовать поиск Windows 7 notepad.exe kind:*.lnk
и не мог заставить его работать все время. Я думаю, что это может иметь проблемы с неиндексированными каталогами. Я попробовал некоторые изменения настроек, и если я был близко, я заставил это работать, но если я пошел в корень диска, я не заставил это работать.
Мне повезло с использованием UltraEdit, но я уверен, что есть другие (бесплатные) текстовые редакторы, которые будут искать каталоги / подкаталоги.
Конечно, в зависимости от того, насколько уникален ваш поиск и имя программы / папки, вы можете получить ложные срабатывания. Но это должно найти все ярлыки для цели, которую вы искали, что у вас есть права на просмотр и чтение. (т. е. пользователь может иметь его на своем рабочем столе, а у вас нет разрешения на просмотр рабочего стола этого пользователя.)
Надеюсь это поможет.
РЕДАКТИРОВАТЬ: Я только что нашел TextCrawler , я не пробовал его, но он может выполнить поиск, который я описал.
Извините, я не могу спросить вас, что такое программирование env. вы используете Тем не менее, я знаю об этой ссылке COM Script Host Windows.
http://msdn.microsoft.com/en-us/library/xk6kst2k(VS.85).aspx
Кроме того, я не думаю, что когда-либо говорил, что это упомянуто в документации, но если вы хотите «прочитать» ярлык, вы используете ту же команду WshShell.CreateShortcut, чтобы «открыть» файл ярлыка, а затем просто вызовите variable.TargetPath для получить значение.
Я также видел некоторые ссылки на то, как это сделать в PowerShell, хотя это выглядело даже более сложным, чем эти примеры.
Сочетания клавиш для программ Microsoft: http://www.microsoft.com/enable/products/keyboard.aspx
Этот URL-адрес охватывает:
И если вы хотите найти их для конкретной программы, просто введите название программы вместе с номером версии и сочетаниями клавиш.
например: Mozilla Firefox 3.6 keyboard shortcuts
Откройте меню «Пуск» / кнопку и введите: type: *.lnk
в поле поиска / запуска внизу. Нажмите «увидеть больше результатов» синим цветом, теперь чуть выше.
Откроется новое окно проводника. Измените представление файла на «Подробно».
Щелкните правой кнопкой мыши по строке «заголовок» для каждой категории и добавьте « Link target
» в показанные поля (вам, вероятно, потребуется нажать «еще» и найти его в алфавитном списке)
Теперь нажмите на Link target
строку «заголовок», чтобы отсортировать по цели ссылки, и найдите все ваши windows-ярлыки-файлы, которые указывают на ваш целевой файл.
Это должно показать все варианты флагов командной строки, так как вы сортируете в алфавитном порядке по целевому пути.