如何在简单的 CGI python 服务器上运行 shell 脚本?

use*_*154 5 python linux bash shell

我在 Linux 上有一个非常简单的 CGI python 服务器,代码如下:

#!/usr/bin/env python

import BaseHTTPServer
import CGIHTTPServer
import cgitb; cgitb.enable()  ## This line enables CGI error reporting

server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler
server_address = ("", 8000)
handler.cgi_directories = ["/"]

httpd = server(server_address, handler)
httpd.serve_forever()
Run Code Online (Sandbox Code Playgroud)

在同一目录中,我有一个名为 example-bash.sh 的脚本。我想要做的只是当我导航到 localhost:8000/example-bash.sh 时能够在浏览器中显示该 bash 脚本的输出。当我尝试时,它只是打开文件而不是运行它。

example-bash 只有以下代码:

#!/bin/bash
echo "Content-type: text/html"
echo ''
echo 'CGI Bash Example'
Run Code Online (Sandbox Code Playgroud)

我怎样才能让它运行呢?

fal*_*tru 3

确保 shell 脚本可执行。

chmod +x example-bash.sh
Run Code Online (Sandbox Code Playgroud)

演示版