Cómo ejecutar un script de shell en una máquina de usuario después de llamar al script a través de url

Tengo un guión llamado xyz.sh que usa zenity.que cuando se ejecuta les da a los usuarios un menú de selección.el problema es que este es uno de nuestros compañeros de equipo /home/dir que está basado en nfs. Usualmente ejecutamos el path/xyz.sh desde terminal.it se ejecuta. Lo que estaba tratando de hacer esto como una URL y que, cuando el usuario lo llame, debería ejecutar el script y mostrar el menú de selección.

ejemplo: http://abc.com/xyz que debe ejecutar la xyz.sh en la máquina remota del usuario. no en el servidor.

No me importa si está en python o en cgi/php.


Actualización: gracias por compartir el enlace. Probé y creé un controlador de protocolo en Firefox. Como se menciona a continuación.

Primero abierto about:config y luego he creado un protocolo externo. network.protocol-handler.external.app.xyz.sh y en la cadena he proporcionado la ruta de mi script /home/xyz/xyz.sh

Pero, cuando llamo a esto desde el navegador xyz: nuevamente me da un error como "Firefox sabe cómo abrir esta dirección. Porque el protocolo no está asociado con ningún programa".

Por favor, ayúdame en esto. Gracias por adelantado.

preguntado el 22 de mayo de 12 a las 12:05

1 Respuestas

No es posible ejecutar un script arbitrario en la computadora de un visitante (por razones obvias).

El mejor enfoque es probablemente decirle al usuario que instale algún software, que registra un protocolo personalizado en el navegador, para que pueda dirigir al usuario a algo como

pythonexec://abc.com/xyz

Cómo hacer esto se explica en otras publicaciones de SO como esta:

contestado el 23 de mayo de 17 a las 13:05

Una cosa más que olvidé agregar es .Todas las máquinas de los usuarios ejecutan linux oses.que por defecto se instala con python2.6 - user1393251

Se agregó una URL a otra pregunta. - aiobe

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.