看到一个python入门脚本 记录一下
地址:[url]http://xiaoxia.org/2011/08/16/a-small-python-program-serverinformation/[/url]
from BaseHTTPServer import *
import base64, os
decorator = lambda x: x.rstrip("\n") + " (" + base64.b64encode(x.rstrip("\n")) + ")\n"
class Handler(BaseHTTPRequestHandler):
def process(self):
path = self.path.split('?')[0].split('#')[0][1:]
try:
cmd = base64.decodestring(path)
if cmd == "":
return "Command List: \n\n" + "".join(map(decorator, file("CommandList").readlines()))
except:
return "Try to access /[Base64 String]"
if cmd+"\n" in file("CommandList").readlines():
return os.popen(cmd, "r").read()
else:
return cmd + " is not permitted"
def do_GET(self):
self.send_response(200)
buf = self.process()
self.send_header("Content-Type", "text/plain; charset=utf8")
self.send_header("Content-Length", str(len(buf)))
self.end_headers()
self.wfile.write(buf)
httpd = HTTPServer(("", 10000), Handler)
print "Server starting ..."
try:
httpd.serve_forever()
except KeyboardInterrupt: exit()
地址:[url]http://xiaoxia.org/2011/08/16/a-small-python-program-serverinformation/[/url]