Ejecutar bat desde PHP

1,374 views
Skip to first unread message

SeMiAlCruz

unread,
Aug 8, 2014, 2:32:35 PM8/8/14
to ph...@googlegroups.com
Buen día jovenes.

Alguien me puede decir como ejecutar un .bat remoto desde PHP.

Son dos máquinas con windows en una LAN.

Probé con exec("\\ip\carpeta\archivo.bat"); y no funcionó.

P.D. La carpeta ya está compartida y el .bat si funciona.

Gracias.

José Blanco

unread,
Aug 8, 2014, 2:46:26 PM8/8/14
to PHPGT Grupo de PHPeros de Guatemala


·_  _  _  ·_  _·_  ··  _·  ···  _·_  _·__
José Blanco - Web Developer


--
--
PHPGT :: Grupo de PHPeros de Guatemala
email: ph...@googlegroups.com
reglas de uso: https://sites.google.com/site/grupophpgt

---
Has recibido este mensaje porque estás suscrito al grupo "PHPGT Grupo de PHPeros de Guatemala" de Grupos de Google.
Para anular la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a phpgt+un...@googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.

Mauricio Deleon

unread,
Aug 8, 2014, 4:12:04 PM8/8/14
to ph...@googlegroups.com
tenes que montar \\ip\carpeta\ como z: para poder ejecutar el bat como puso blanco o ver si se puede copiar el .bat a tu unidad de alguna forma
--
Luis Déleon
XYZnetworkInc

José Blanco

unread,
Aug 8, 2014, 4:40:16 PM8/8/14
to PHPGT Grupo de PHPeros de Guatemala
Ahhhh remoto. Eso me pasa por leer de pasada.


·_  _  _  ·_  _·_  ··  _·  ···  _·_  _·__
José Blanco - Web Developer


SeMiAlCruz

unread,
Aug 8, 2014, 5:18:16 PM8/8/14
to ph...@googlegroups.com
Blanco: eso ya lo intenté poniendo la IP de la máquina y no me funcionó.

Luis: Creo que no te entendí muy bien eso de montar la el path.

Stuardo -StR- Rodríguez

unread,
Aug 8, 2014, 5:26:49 PM8/8/14
to ph...@googlegroups.com
A ver... un bat es un equivalente a un .sh
Un .sh es un ejecutable
Indiferentemente si el ejecutable es .bat, .sh. .exe, .com o .superman, un ejecutable se corre como cualquier ejecutable:  exec($pathAlEjecutable)

Ahora tenemos la variable que el ejecutable está en otra maquina, no en la local.  Entonces el problema a preguntar es:

¿Queremos que el programa corra en el servidor remoto, o queremos que el programa corra en el servidor local?

¿Cual es la diferencia? Si corre en el servidor local, usa el CPU local, RAM local, disco duro local etc.. Si necesita abrir un archivo de MisDocumentos, serán MisDocumentos en el servidor local. Si el ejecutable va a usar todos los recusos locales... ¿para que tenemos el path remoto?

Si queremos que al correr el bat, al abrir un archivo de MisDocumentos, no abra MisDocumentos locales sino MisDocumentos del servidor remoto, entonces no podemos ejecutarlo desde nuestra máquina, sino tenemos que decirle al servidor remoto que lo ejecute remotamente.

Quitemos la varialbe de PHP para entender el proceso.  ¿Como corres el ejecutable a mano?
 ¿Entrás al explorador de archivos, navegás a la carpeta \\servidor\carpeta\ y abrís el ejecutable desde ahí,  o entrás via remote desktop y abrís el navegador de archivos y navegás a una carpeta local C:\MisDocumentos\ y abriís el ejecutable desde ahí?



--

Stuardo -StR- Rodríguez | Mercenary Web Developer | http://maphpia.com
email: s...@maphpia.com | msn: s...@maphpia.com | gtalk: s...@maphpia.com
office: +502 2221-9830 | mobil: +502 4210-8819 | skype: stuardo_str



--

Douglas

unread,
Aug 11, 2014, 10:55:20 AM8/11/14
to ph...@googlegroups.com
Para que se ejecute remotamente, lo mejor seria via ssh http://php.net/manual/en/function.ssh2-exec.php


--
Enviado desde mi Gmail

Mauricio Deleon

unread,
Aug 11, 2014, 1:26:25 PM8/11/14
to ph...@googlegroups.com
auguro problemas para instalar una libreria ssh-php en windows xD
Luis Déleon
XYZnetworkInc

José Blanco

unread,
Aug 11, 2014, 1:32:38 PM8/11/14
to PHPGT Grupo de PHPeros de Guatemala
No conozco el caso, pero YO no me metería a correr un .bat remoto, en todo caso colocaría del otro lado un script que reciba un post o algo similar, y que sea éste el que ejecute localmente el .bat. Se me hace más limpio, pero como repito, no conozco el caso (las necedades del cliente a veces pesan más).


·_  _  _  ·_  _·_  ··  _·  ···  _·_  _·__
José Blanco - Web Developer


Douglas

unread,
Aug 11, 2014, 2:21:40 PM8/11/14
to ph...@googlegroups.com
Una alternativa al uso de ssh podria ser el uso de powershell http://technet.microsoft.com/en-us/sysinternals/bb897553.aspx



--
Enviado desde mi Gmail


Luis Fernando Gramajo P.

unread,
Aug 11, 2014, 2:37:59 PM8/11/14
to ph...@googlegroups.com

Empezamos mal desde que es un Windoze. Pero no es mas facil escritorio remoto doble clic en bat y se ejecuta en el servidor remoto ?

Reply all
Reply to author
Forward
0 new messages