还有哪些基于Web的技术可以执行程序?

时间:2013-02-27 19:55:08

标签: php javascript html web-applications asp-classic

在php中有shell_exec()例如,您可以在本地服务器上运行程序。但是其他基于网络的技术可以做到这一点以及如何做到这一点?

3 个答案:

答案 0 :(得分:3)

ASP:

set wshell = CreateObject("WScript.Shell") 
wshell.run "c:\file.bat" 
set wshell = nothing 

的Python:

from subprocess import call
call(["ls", "-l"])

的Perl:

system("command arg1 arg2 arg3");

红宝石:

system("ls")

JSP / Servlet的:

ProcessBuilder pb = 
   new ProcessBuilder("/bin/sh", "-c", "myfolder/myscript.sh > /myfolder/logs/myscript.log");
pb.start();

PHP:

shell_exec ( 'command' )

答案 1 :(得分:2)

您可以使用cron作业,使用任何受支持语言的CGI脚本,当然还可以使用Web服务器配置执行的任何Web语言(包括Python,Ruby,Lisp,Java)。也就是说,直接执行应用程序通常是不可取的;它可能导致高服务器负载和安全漏洞。

答案 2 :(得分:1)

对于Javascript:

客户端,在Windows上可以使用ActiveX:How to execute shell command in Javascript完成。但它要求您允许未签名的ActiveX控件,这会引入一个主要的安全问题。

还有服务器端Javascript,名为node.js。请参阅SO问题node.js execute system command synchronously,了解如何使用它来执行系统命令。