是否有任何方法可以让JavaScript在用户的计算机上运行apt-get install gimp
,当点击链接时,用户将知道软件正在安装。
我用谷歌搜过了。
如果没有办法做到这一点,请说一天后,我将标记为答案。
ubuntu上有一个链接快捷方式:
<a href="apt://gimp" title="apt://gimp" rel="nofollow">gimp</a>
但是它不会自动安装,它只会启动包管理器
上面的几个答案提到,如果它存在,那么它将是不安全的。但事实上,ubuntu已经有了现有的解决方案,而且也很安全。
该机制称为apturl。在这里看到的:
https://help.ubuntu.com/community/AptURL https://wiki.ubuntu.com/AptUrlfirefox支持它,至少是konqueror。它需要安装"apturl"包(默认安装)。当用户点击上面@atrepp的答案所示的apt-url链接时,默认的软件包启动器将开始安装,并要求适当的授权(密码),就像你点击"Ubuntu软件中心"一样。它完全安全,就像你通过"Ubuntu软件中心"或"apt-get"直接安装一样。
我很有信心,没有这样的解决方案存在于RHEL或SuSE。
如果这是可能的,这将是一个巨大的安全问题!想象一下类似的链接,但是运行类似rm -rf ~
的东西…据我所知,浏览器中的JavaScript不支持子进程创建。
另一方面,Java能够创建子进程(如apt-get),因此您可以使用(签名)Java applet;在这种情况下,将提示用户授权applet运行,以使他意识到潜在的安全风险。
如果你能做到这一点,我将永远不会使用互联网,因为它将充满垃圾邮件。
javascript和所有客户端脚本都有非常有限的权限,所以制作shell命令是不可能的
不,直接从JavaScript在客户端计算机上运行shell命令是不可能的。当然有JavaScript shell函数,但它们的功能有限。但是在任何情况下,web上的客户端代码都没有权限访问根级命令,例如apt-get install。
你可以写一个python/ruby/perl脚本来做这些。让用户下载并手动执行。
除此之外,我很抱歉,朋友,这根本不可能(至少从我多年来在网上看到的情况来看)。