我有一个脚本,在生成此页面的cgi-bin中。其意图是服务 作为我构建的平移网络摄像头的界面。相机,平移,然后快速返回中心位置。 我发现这是因为每次页面加载时,所有脚本都会连续调用,以z.py结尾。 如何修复此程序,以便脚本在选择发生之前不会运行?实际上,一切都在页面加载时运行, 这就是为什么它总是回到中心。
#! /bin/sh
echo "content-type: text/html"
echo
echo "<!DOCTYPE html><html><head><title>pan camera</title></head>"
echo "<body>"
echo "<form action=\"g.pt1\" method=\"get\">"
echo "<select name=\"letter\" onchange=\"submit();\">"
echo " <option value=\"w\">w</option>"
echo " <option value=\"a\">a</option>"
echo " <option value=\"s\">s</option>"
echo " <option value=\"d\">d</option>"
echo " <option value=\"z\">z</option>"
i=0
for i in a s d w z
do
echo " $i $(./$i.py)"
done
echo "</select></form>"
echo "<iframe src=\"localhost:8888/?action=stream\" width=\"330\" height=\"260\">"
echo " <p>Your browser does not support iframes.</p>"
echo "</iframe>"
echo "</body></html>"
答案 0 :(得分:0)
注意 - 不是'网络程序员'......
脚本上面是“一切”吗? (或只是输出?)
此外,对于此类用途,您可能需要考虑使用“此处文档”以避免“转义”所有引号。
每次页面加载时都会运行“中间”中带有回声线的FOR LOOP。
$(./ $ i.py)将按顺序运行a.py,然后是s.py,...然后是z.py
删除循环并将此逻辑更改为“获取用户输入”,您应该很高兴。