用htmlbutton运行一个shell脚本

我想在网站上按下button时启动一个bash脚本。 这是我第一次尝试:

<button type="button" onclick="/path/to/name.sh">Click Me!</button> 

但没有运气。 有什么build议么?

正如卢克说,你需要使用服务器端语言,如PHP。 这是一个非常简单的PHP示例:

 <?php if ($_GET['run']) { # This code will run if ?run=true is set. exec("/path/to/name.sh"); } ?> <!-- This link will add ?run=true to your URL, myfilename.php?run=true --> <a href="?run=true">Click Me!</a> 

将其保存为myfilename.php ,并将其放置在安装了php的Web服务器上。 同样的事情可以用asp,java,ruby,python完成…

PHP可能是最简单的。

只需创build一个包含<?php shell_exec("yourscript.sh"); ?>的文件script.php <?php shell_exec("yourscript.sh"); ?> 并发送任何人点击button到目的地。 您可以将用户返回到带有标题的原始页面:

 <?php shell_exec("yourscript.sh"); header('Location: http://www.website.com/page?success=true'); ?> 

参考: http : //php.net/manual/en/function.shell-exec.php

这实际上只是BBB的答案的扩展,导致我的实验工作。

当你点击“打开脚本”button时,该脚本将简单地创build一个文件/ tmp / testfile。

这需要3个文件。

  1. 实际的HTML网站上有一个button。
  2. 一个执行脚本的php脚本
  3. 脚本

文件树:

 root@test:/var/www/html# tree testscript/ testscript/ ├── index.html ├── testexec.php └── test.sh 

1.主网页:

 root@test:/var/www/html# cat testscript/index.html <form action="/testscript/testexec.php"> <input type="submit" value="Open Script"> </form> 

2.运行脚本并redirect回主页面的PHP页面:

 root@test:/var/www/html# cat testscript/testexec.php <?php shell_exec("/var/www/html/testscript/test.sh"); header('Location: http://192.168.1.222/testscript/index.html?success=true'); ?> 

3.脚本:

 root@test:/var/www/html# cat testscript/test.sh #!/bin/bash touch /tmp/testfile 

这里有一个教程。 这将是一个很好的起点 –

http://www.cyberciti.biz/tips/executing-linuxunix-commands-from-web-page-part-i.html

你可以在没有问题的情况下在bash中执行服务器端的脚本。

这里另一个教程: http : //www.yolinux.com/TUTORIALS/BashShellCgi.html