Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: marioNmS en 1 Noviembre 2015, 11:57 am



Título: Ayudaaa ejecutar 2 comandos de linea cmd
Publicado por: marioNmS en 1 Noviembre 2015, 11:57 am
Ejemplo

Código
  1. AbsPath = Replace(WScript.ScriptFullName, WScript.ScriptName, "")
  2. Set objShell = CreateObject("Wscript.Shell")
  3.  
  4. strCommand = "cmd /k Ejemplo1"
  5. strCommand2 = "cmd /k Ejemplo2"
  6.  
  7. objShell.Run strCommand && strCommand2

como hago para ejecutar los dos comandos??. Puedo hacerlo por separado pero no me sirve ya que el comando2 depende del otro..

si alguien sabe, que me ayude por favor..


Título: Re: Ayudaaa ejecutar 2 comandos de linea cmd
Publicado por: Eleкtro en 1 Noviembre 2015, 12:52 pm
Puedo hacerlo por separado pero no me sirve ya que el comando2 depende del otro.

¿Qué quieres decir con que "el comando2 depende del comando1"?, ¿cómo es eso posible, a que te refieres?.

Si lo que pretendes es iniciar una instancia de la CMD y concatenar dos comandos de Batch, entonces puedes hacerlo de la siguiente manera:
Código
  1. Set wshShell = WScript.CreateObject("WScript.Shell")
  2.  
  3. filepath  = wshShell.ExpandEnvironmentStrings( "%COMSPEC%" )
  4. arguments = "/K ""Echo Hello && Echo World!"""
  5.  
  6. call wshShell.Run( filepath & " " & arguments )
  7.  
  8. Wscript.Quit(0)

Si no te refieres a eso, da más detales y muestra los comandos reales para poder indicarte una solución.

Saludos


Título: no se mucho de vbs
Publicado por: marioNmS en 1 Noviembre 2015, 14:02 pm
pero con el ejemplo que me diste se parece mas a lo que estoy buscando, pero no es exactamente me explico con el ejemplo que me diste. Ejemp:

Set wshShell = WScript.CreateObject("WScript.Shell")
AbsPath = Replace(WScript.ScriptFullName, WScript.ScriptName, "")

filepath  = wshShell.ExpandEnvironmentStrings( "%COMSPEC%" )
arguments = "/k ""Echo set JAVA_HOME="&AbsPath&"jre1.8.0_40 && Echo set path=%path%;%JAVA_HOME%\bin"""

call wshShell.Run( filepath & " " & arguments )

Wscript.Quit(0)

cuando quiero que el path me tome el JAVA_HOME no me trae la ruta, se queda igual como esta %JAVA_HOME%
Esto es para un programa hecho en java, lo que intento es que encaso de no tener java instalado, se pueda ejecutar como portable...
Gracias por tu repuesta...