Tengo varias aplicaciones que tiendo a necesitar abrir al mismo tiempo, y en lugar de depender únicamente de la carpeta Inicio para iniciarlas al mismo tiempo (y para poder volver a abrirlos todos si algunos se cerraron en algún momento del día) Creé una carpeta llena de accesos directos de forma similar a los enlaces de inicio de nivel de ejecución de Linux. Así, en la carpeta que tengo enlaces de acceso directo similares a:Ejecutar enlaces de acceso directo desde un archivo por lotes y no esperar a que la aplicación salga
- S00 - Outlook.lnk
- S01 - Notepad ++ LNK
- S02 - Chrome.lnk
- S03 - Skype.lnk
Creé un archivo por lotes que recorrerá todos los enlaces que coinciden con el formato de nombres y los ejecutará. El contenido del archivo por lotes que actualmente es:
@FOR /F "usebackq delims==" %%f IN (`dir /b "S* - *.lnk"`) DO "%%f"
Se pondrá en marcha la mayoría de los enlaces que trato muy bien, pero algunos pondrá en marcha y esperar a que el proceso para salir, evitando así que sigan las secuencias de comandos de apertura. ¿Hay alguna forma de ejecutar los accesos directos sin esperar a que los procesos salgan dentro del archivo por lotes? ¿O es una causa perdida y debería buscar una solución Powershell en su lugar?
cosas que he intentado hasta ahora:
cambiar el contenido de
@FOR /F "usebackq delims==" %%f IN (`dir /b "S* - *.lnk"`) DO START /B /I "%%f"
Se pone en marcha la línea de comandos en un proceso en segundo plano, pero en realidad nunca lanza el destino del enlace.
cambiar el contenido de
@FOR /F "usebackq delims==" %%f IN (`dir /b "S* - *.lnk"`) DO %comspec% /k "%%f"
Se pone en marcha el primer eslabón, pero espera.
Una cosa a tener en cuenta sobre 'foo.bat' START es si otro guión (' decir bar.bat') llama se mantendrá " activo "hasta que' foo.bat' termine de ejecutarse. Entonces, si su 'foo.bat' es un script de bucle que bloquea los recursos,' bar.bat' estará "en uso" y bloqueará recursos (incluso si 'bar.bat' está cerrado) hasta que 'foo.bat' se cierre . – Zero