Respuestas:
findstr /ism notepad.exe \*.lnk
findtr.exe viene incluido con Windows desde XP si no antes. Vive en c: \ windows \ system32.
notepad.exe es el objetivo del acceso directo, reemplácelo con el ejecutable real que le interesa.
\ *. lnk se divide implícitamente en dos partes: "\" que especifica la raíz de la búsqueda y "* .lnk" que especifica los archivos a buscar.
\*.lnk
a "c:\Program Files\*.lnk"
. Si la ruta con espacios está debajo de la raíz de búsqueda pero no forma parte de la línea de comando, las comillas son innecesarias pero aún están permitidas.
/C:
Eg findstr /ism /C:"note pad.exe" \*.lnk
. /C:
habilita la búsqueda literal. De lo contrario, los espacios se tratan como operadores u.
Puede buscar archivos * .lnk que contienen la ruta o el nombre del ejecutable.
Por ejemplo: busque los archivos * .lnk que contienen notepad.exe
Intenté usar la búsqueda de Windows 7 notepad.exe kind:*.lnk
y no pude hacerlo funcionar todo el tiempo. Creo que puede tener problemas con los directorios no indexados. Intenté algunos cambios de configuración y si estaba cerca, lo puse a trabajar, pero si fui a la raíz de una unidad, no lo puse a trabajar.
Tuve suerte con UltraEdit, pero estoy seguro de que hay otros editores de texto (gratuitos) que buscarán directorios / subdirectorios.
Por supuesto, dependiendo de qué tan única sea la búsqueda que realice y el nombre del programa / carpeta, podría obtener falsos positivos. Pero esto debería encontrar todos los accesos directos al objetivo que estaba buscando, que tiene permisos para ver y leer. (es decir, un usuario puede tener uno en su escritorio y usted no tiene permiso para ver el escritorio de ese usuario).
Espero que esto ayude.
EDITAR: Acabo de encontrar TextCrawler , no lo había probado, pero puede hacer la búsqueda que describí.
Lo siento, no puedo preguntarte qué programación env. lo estas usando Sin embargo, sí sé acerca de esta referencia COM de Windows Script Host.
http://msdn.microsoft.com/en-us/library/xk6kst2k(VS.85).aspx
Además, creo que nunca digo que se menciona en la documentación, pero si desea "leer" un acceso directo, use el mismo comando WshShell.CreateShortcut para "abrir" el archivo de acceso directo, luego simplemente llame a variable.TargetPath para obtener el valor
También he visto algunas referencias sobre cómo hacer esto en PowerShell, aunque parecía aún más complicado que estos ejemplos.
Métodos abreviados de teclado para programas de Microsoft: http://www.microsoft.com/enable/products/keyboard.aspx
Esta URL cubre:
Y si desea encontrarlos para un programa específico, simplemente busque en Google el nombre del programa junto con el número de versión y los atajos de teclado.
p.ej: Mozilla Firefox 3.6 keyboard shortcuts
Abra el menú / botón de inicio e ingrese: type: *.lnk
en el campo de búsqueda / ejecución en la parte inferior. Haga clic en "ver más resultados" en azul, ahora justo encima de eso.
Se abrirá una nueva ventana del explorador. Cambie la vista de archivo a "Detallado".
Haga clic con el botón derecho en las barras de "título" para cada categoría y agregue " Link target
" a los campos que se muestran (es probable que necesite hacer clic en "más" y encontrarlo en la lista alfabética)
Ahora haga clic en la Link target
barra de "título" para ordenar por destino de enlace, y encuentre todos sus archivos de acceso directo de Windows que apuntan a su archivo de destino.
Esto debería mostrar todas las variaciones de las banderas de línea de comandos, ya que está ordenando alfabéticamente por ruta de destino.