elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  [BATCH] - Ejecución de varias aplicaciones a la vez
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [BATCH] - Ejecución de varias aplicaciones a la vez  (Leído 6,944 veces)
melk

Desconectado Desconectado

Mensajes: 8


Frontend Developah


Ver Perfil
[BATCH] - Ejecución de varias aplicaciones a la vez
« en: 18 Abril 2014, 14:14 pm »

Buenas a todos,

Definitivamente, no sé que estoy haciendo mal, llevo unos días detrás del script (aunque tampoco es que haya tenido mucho tiempo).

Lo que quiero es tener un script básico en bat que me permita ejecutar un conjunto de aplicaciones.

Lo he intentado llamando las aplicaciones unas tras otras, pero el script espera a que una aplicación termine para llamar a la siguiente.

Usando start /b lo ejecuta en la misma ventana pero me escribe por cada aplicación ejecutada el mensaje de bienvenida del cmd. Aparte de que algo debo estar haciendo mal con la gestión de los gotos

La verdad que me lía bastante el uso de gotos pq nunca los he utilizado en programación web.

Bueno, os dejo el script que por ahora he intentado hacer por si algún alma caritativa puede ayudame.

Código:
@echo off 
echo "Ejecutando Xampp, Sublime Text 2 y Koala"
start /b "C:\Program Files (x86)\Koala\koala.exe"
start /b C:\xampp\xampp-control.exe
start /b "C:\Program Files\Sublime Text 2\sublime_text.exe"
set /p respuesta = Abrir Thunderbird? (s/n)

if [%respuesta%]==s goto Thunderbird
if [%respuesta%]==n goto Siguiente


:Thunderbird
echo "Abriendo Thunderbird..."
start /b "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe"

:Siguiente
set /p respuesta = Spotify, Radiosure o ninguno? (s/r/n)

if [%respuesta%]==s goto Spotify
if [%respuesta%]==r goto Radiosure
if [%respuesta%]==n goto Ninguno

:Spotify
start /b C:\Users\David\AppData\Roaming\Spotify\spotify.exe
exit

:Radiosure
start /b C:\Users\David\AppData\Local\RadioSure\RadioSure.exe
exit

:Ninguno
exit

Un saludo,  :silbar:


En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #1 en: 18 Abril 2014, 14:49 pm »

Corre cada comando en una nueva instancia de la CMD.

Código:
CMD /[K|C] "Argumentos"

Ej:
Código
  1. Start /B "CMD" "%ComSpec%" /K " Start "APP" "Notepad.exe" "

EDITO: Addemás...
Citar
Código:
set /p respuesta = Abrir Thunderbird? (s/n)

if [%respuesta%]==s

Algo falla ahí.

1. Encerrar variables con comillas dobles.
2. No dejar espacios vacios en el nombre de la variable.
3. No añadir caracteres especiales a la expresión del IF, y encerrarla también con comillas dobles.

Ej:
Código:
Set /P "Respuesta=Pregunta"
If /i "%respuesta%"=="s" (Goto :...)

Nota: Usa el comando Choice para preguntas Booleanas.


« Última modificación: 18 Abril 2014, 14:54 pm por Eleкtro » En línea



NikNitro!


Desconectado Desconectado

Mensajes: 1.309


Galletaaa!!!


Ver Perfil WWW
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #2 en: 18 Abril 2014, 15:58 pm »

Creo recordar que poniendo un $ al final de la sentencia se ejecutaba en segundo plano y te permitia seguir llamando aplicaciones. Luego para traerlas al hilo principal se usaban bg y fg (background y foreground). Al menos en Bash. No se si habrá mucha diferencia.

Saludos ;)
En línea

daryo


Desconectado Desconectado

Mensajes: 1.070



Ver Perfil WWW
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #3 en: 19 Abril 2014, 15:20 pm »

Creo recordar que poniendo un $ al final de la sentencia se ejecutaba en segundo plano y te permitia seguir llamando aplicaciones. Luego para traerlas al hilo principal se usaban bg y fg (background y foreground). Al menos en Bash. No se si habrá mucha diferencia.

Saludos ;)

ojala batch fuera la mitad de potente que bash
En línea

buenas
NikNitro!


Desconectado Desconectado

Mensajes: 1.309


Galletaaa!!!


Ver Perfil WWW
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #4 en: 19 Abril 2014, 15:24 pm »

juus :(
En línea

melk

Desconectado Desconectado

Mensajes: 8


Frontend Developah


Ver Perfil
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #5 en: 20 Abril 2014, 17:02 pm »

Buenas,

Gracias por la ayuda.

He cambiado todo el archivo según vuestras instrucciones.

El codigo queda ahora:

Código:
@echo off 

echo "Ejecutando Xampp, Sublime Text 2 y Koala"
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Program Files (x86)\Koala\koala.exe" "
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\xampp\xampp-control.exe" "
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Program Files\Sublime Text 2\sublime_text.exe" "

set /P "respuesta=Abrir Thunderbird? (s/n)"

If /i "%respuesta%"=="s" (Goto :Thunderbird)
If /i "%respuesta%"=="n" (Goto :Siguiente)

:Thunderbird
echo "Abriendo Thunderbird..."
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe" "

:Siguiente
set /P "respuesta=Spotify, Radiosure o ninguno? (s/r/n)"

If /i "%respuesta%"=="s" (Goto :Spotify)
If /i "%respuesta%"=="r" (Goto :Radiosure)
If /i "%respuesta%"=="n" (Goto :Ninguno)

:Spotify
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Users\David\AppData\Roaming\Spotify\spotify.exe" "
exit

:Radiosure
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Users\David\AppData\Local\RadioSure\RadioSure.exe" "
exit

:Ninguno
exit

Y se me ejecutan las 3 primeras aplicaciones, incluyendo thunderbird si le digo que si (aunque me aparece ese molesto prompt)

Luego para la siguiente pregunta ya pasa de mi. Os dejo la salida.

Citar
"Ejecutando Xampp, Sublime Text 2 y Koala"
Abrir Thunderbird? (s/n)
C:\Users\David\Desktop>
C:\Users\David\Desktop>
C:\Users\David\Desktop>s
"Abriendo Thunderbird..."
Spotify, Radiosure o ninguno? (s/r/n)
C:\Users\David\Desktop>r
"r" no se reconoce como un comando interno o externo,
programa o archivo por lotes ejecutable.

C:\Users\David\Desktop>

Creo que me estoy perdiendo un poco...
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #6 en: 20 Abril 2014, 17:43 pm »

Código
  1. Choice /C "SRN" /M "Spotify, Radiosure o ninguno?"

Saludos
En línea



melk

Desconectado Desconectado

Mensajes: 8


Frontend Developah


Ver Perfil
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #7 en: 20 Abril 2014, 17:52 pm »

Y pregunta de noob, ¿donde se almacena la respuesta del Choice?

Me está tirando diciendo que R o S o N no es un comando válido

Perdon por mi ignorancia  :(
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.885



Ver Perfil
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #8 en: 20 Abril 2014, 18:49 pm »

1. No uses el mismo nombre de variable para más de una variable o pueden entrar en conflicto sus valores...

Código:
Set /P "Respuesta1=..."
Set /P "Respuesta2=..."

2. El resultado del comando Choice se almacena en el código de salida, es decir, puedes acceder a él en la variable dinámica ERRORLEVEL.

Código
  1. @Echo OFF
  2.  
  3. Choice /C "SRN" /M "Spotify, Radiosure, o ninguno?"
  4. Call :Choice%ErrorLevel%
  5. Pause&Exit
  6.  
  7. :Choice1::S
  8. ("%AppData%\Spotify\spotify.exe")2>NUL & Goto :EOF
  9.  
  10. :Choice2::R
  11. ("%LocalAppData%\RadioSure\RadioSure.exe")2>NUL & Goto :EOF
  12.  
  13. :Choice3::N
  14. Goto :EOF

Saludos
« Última modificación: 20 Abril 2014, 18:54 pm por Eleкtro » En línea



melk

Desconectado Desconectado

Mensajes: 8


Frontend Developah


Ver Perfil
Re: [BATCH] - Ejecución de varias aplicaciones a la vez
« Respuesta #9 en: 20 Abril 2014, 22:29 pm »

La verdad que vaya cosas más raras se ven en batch xD

Creo que terminaba antes haciéndome un script en PHP y ejecutándolo en consola xD

Bueno, a lo que voy:

Código:
@echo off 

echo "Ejecutando Xampp, Sublime Text 2 y Koala"
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Program Files (x86)\Koala\koala.exe" "
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\xampp\xampp-control.exe" "
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Program Files\Sublime Text 2\sublime_text.exe" "

set /P "respuesta=Abrir Thunderbird? (s/n)"

If /i "%respuesta%"=="s" (Goto :Thunderbird)
If /i "%respuesta%"=="n" (Goto :Siguiente)

:Thunderbird
echo "Abriendo Thunderbird..."
Start /B "CMD" "%ComSpec%" /K " Start "APP" "C:\Program Files (x86)\Mozilla Thunderbird\thunderbird.exe" "

:Siguiente
Choice /C "SRN" /M "Spotify, Radiosure, o ninguno?"
Call :Choice%ErrorLevel%
Pause&Exit
 
:Choice1::S
("%AppData%\Spotify\spotify.exe")2>NUL & Goto :EOF
 
:Choice2::R
("%LocalAppData%\RadioSure\RadioSure.exe")2>NUL & Goto :EOF
 
:Choice3::N
Goto :EOF

Tengo colocado eso, la parte que me dices que no use respuesta en más de una ocasión no la entiendo muy bien ya que solo la utilizo en dos ocasiones, lectura y escritura.

Sobre el tema del Choice se sigue emperrando el sistema en que no existe R o N o S como comando y blablabla.

Estoy por programarme algo en otro lenguaje pero sólo por no darte la paliza xDD
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Ejecución de aplicaciones remotamente !!
Programación Visual Basic
2 2,193 Último mensaje 8 Junio 2005, 17:45 pm
por
Proyecto de desarrollo de varias aplicaciones
PHP
Nightwalker89 4 2,498 Último mensaje 11 Marzo 2009, 00:11 am
por Nightwalker89
Varias alternativas al lanzador de aplicaciones de Ubuntu
Noticias
wolfbcn 0 2,501 Último mensaje 15 Octubre 2011, 15:21 pm
por wolfbcn
ejecución comando cin y sus aplicaciones
Programación C/C++
netco0m 0 1,841 Último mensaje 28 Agosto 2012, 08:00 am
por netco0m
Aplicaciones en ejecucion android
Dispositivos Móviles (PDA's, Smartphones, Tablets)
randol 1 2,448 Último mensaje 30 Marzo 2017, 21:56 pm
por engel lex
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines