Відповіді:
findstr /ism notepad.exe \*.lnk
findstr.exe поставляється в комплекті з Windows з XP, якщо не раніше. Він живе в c: \ windows \ system32.
notepad.exe - ціль ярлика, замінити його фактично виконаним файлом.
\ *. lnk неявно розділяється на дві частини: "\" із зазначенням кореня пошуку та "* .lnk" із зазначенням файлів для пошуку.
\*.lnk
до "c:\Program Files\*.lnk"
. Якщо шлях з пробілами знаходиться під вашим коренем пошуку, але не є частиною командного рядка, лапки є непотрібними, але все ж дозволені.
/C:
Напр findstr /ism /C:"note pad.exe" \*.lnk
. /C:
дозволяє буквальний пошук. В іншому випадку пробіли трактуються як оператори або оператори.
Ви можете шукати * .lnk файли, що містять шлях або ім'я виконавця.
Наприклад: шукайте файли * .lnk, які містять notepad.exe
Я спробував скористатися пошуком Windows 7 notepad.exe kind:*.lnk
і не міг змусити його працювати весь час. Я думаю, це може мати проблеми з неіндексованими каталогами. Я спробував змінити налаштування, і якщо я був близький, я змусив його працювати, але якщо я перейшов до кореня диска, я не змусив його працювати.
Мені пощастило використовувати UltraEdit, але я впевнений, що там є інші (безкоштовні) текстові редактори, які шукатимуть каталоги / підкаталоги.
Звичайно, залежно від того, наскільки унікальний для вас пошук і назва програми / папки, ви можете отримати помилкові позитиви. Але тут слід знайти всі ярлики до цілі, яку ви шукали, щоб у вас були дозволи побачити та прочитати. (тобто користувач може мати його на своєму робочому столі, і ви не маєте дозволу бачити робочий стіл цього користувача.)
Сподіваюсь, це допомагає.
EDIT: Щойно я знайшов TextCrawler , я його не пробував, але він може бути в змозі здійснити пошук, який я описав.
Вибачте, я не можу запитати вас про програмування env. ви використовуєте. Однак я знаю про цю посилання на хост Windows Script COM.
http://msdn.microsoft.com/en-us/library/xk6kst2k(VS.85).aspx
Крім того, я не думаю, що я коли-небудь говорив про це в документації, але якщо ви хочете "прочитати" ярлик, ви використовуєте ту саму команду WshShell.CreateShortcut, щоб "відкрити" файл ярлика, а потім просто зателефонуйте змінній. отримати значення.
Я бачив деякі посилання і на те, як це зробити в PowerShell, хоча це виглядало навіть складніше, ніж ці приклади.
Комбінації клавіш для програм Microsoft: http://www.microsoft.com/enable/products/keyboard.aspx
Ця URL-адреса охоплює:
І якщо ви хочете знайти їх для певної програми, просто перейдіть по google назву програми разом із номером випуску та комбінаціями клавіш.
наприклад: Mozilla Firefox 3.6 keyboard shortcuts
Відкрийте меню / кнопку запуску та введіть: type: *.lnk
у поле пошуку / запуску внизу. Клацніть "побачити більше результатів" синім кольором, прямо над цим.
Відкриється нове вікно провідника. Змініть вигляд файлу на "Детально".
Клацніть правою кнопкою миші рядки "title" для кожної категорії та додайте " Link target
" до показаних полів (вам, ймовірно, потрібно буде натиснути "більше" і знайти його в алфавітному списку)
Тепер натисніть на Link target
рядок "title", щоб відсортувати за цільовим посиланням, і знайдіть усі ваші windows-ярлики, які вказують на ваш цільовий файл.
Це має відображати всі варіанти прапорів командного рядка, оскільки ви сортуєте за алфавітом за цільовим шляхом.