我基本上都是这样做的:
@get_request("/index.html")
def server():
return os.system("ls")
我想知道如果这样做可能会出现潜在问题。这相当于使用glob
?
答案 0 :(得分:1)
那段代码:
def server():
return os.system("ls")
如果当前目录有效,则仅返回0
。 不等同于:
def server():
return os.listdir(os.curdir)
或
def server():
return glob.glob("*")
两者都将当前目录的内容作为list
所以没有安全/安全问题,因为命令是硬编码的,但这个ls
服务是无用的。也许你的意思是:
def server():
return subprocess.check_output("ls").splitlines()
这更有意义......但我仍然没有看到调用子进程执行更慢(并且以不太便携的方式)python本身可以实现的目的。