shell = True如果您的输入数据来自不受信任的来源,则使用可能会带来安全风险。例如,如果您的
mid变量的内容是
"/dev/null; rm-rf /"。在您的情况下似乎并非如此,因此我不必对此太担心。
在代码中,您将结果
awk直接写入中的文件名
mid。要调试该问题,您可能需要使用
subprocess.check_output并读取
awkpython程序中调用的结果。
cmd = """sort -n -r -k5 %s | head -n 500| awk 'OFS="t"{{if($2-{1}>0){{print $1,$2-{1},$3+{1},$4,$5}}}}'""".format(summit, top_count)subprocess.check_call(cmd, shell=True, stdout=file)


