我一直在使用以下PHP脚本在服务器上触发bash脚本:
<?php
$output = shell_exec('cat update.sh | ssh -l some_user -i key foo.bar.com');
echo "<pre>$output</pre>";
?>
由于我无法控制的问题,我们更改了服务器,而且我无法运行PHP(不要问)。我可以在这里使用另一种语言来完成这项任务吗?显然,我可以用HTTP POST定位的东西。感谢。
答案 0 :(得分:2)
你可以去老式的cgi-bin并直接运行bash脚本:
#!/bin/bash
x=`cat update.sh | ssh -l some_user -i key foo.bar.com`
echo <<EOL
Content-type: text/html
<pre>$x</pre>
EOL
答案 1 :(得分:1)
您可以直接使用cgi运行bash脚本。
#!/bin/bash
OUTPUT=`cat update.sh | ssh -l some_user -i key foo.bar.com`
# You must add following two lines before
# outputting data to the web browser from shell
# script
echo "Content-type: text/html"
echo ""
echo "<html><head><title>Demo</title></head><body>"
echo "$OUTPUT <br>"
echo "</body></html>"
中的一些代码
答案 2 :(得分:0)
这取决于服务器配置。任务非常简单,因此您可以在提供商提供的每种(我猜)技术中执行此操作;)
如果您有权访问perl:
#!/usr/bin/env perl
++$|;
print '<pre>';
system ('your command 2>&1');
print '</pre>';
Python和许多其他类似的东西。