如果我在命令行上运行semgrep,就会得到一个非常好的输出。

但是,如果将文件保存到文件中,则在文本编辑器中打开ANSI转义序列时,会得到各种终端ANSI转义序列:
Findings:
[36m[22m[24m ....lib/_baseutils.py [0m
[1m[24mpython.flask.security.xss.audit.direct-use-of-jinja2.direct-use-of-jinja2[0m
Detected direct use of jinja2. If not done properly, this may bypass HTML escaping which
opens up the application to cross-site scripting (XSS) vulnerabilities. Prefer using the
Flask method 'render_template()' and templates with a '.html' extension in order to
prevent XSS.
Details: https://sg.run/RoKe
2252┆ templateEnv = [1m[24mEnvironment(loader=templateLoader)[0m
⋮┆----------------------------------------是的,我知道我可以cat out.txt,它看起来又漂亮了。但是,如何在文本编辑器中获得一种看起来正常的格式呢?(实际上,最好的方法是减价,因为urls会起作用)。
现在,我已经测试了--json标志,但是这对于人类的可读性来说太复杂了。--vim,--emacs很好,但是有点简洁,就像错过了规则urls。排在一条线上太久了。其他的输出格式,如--junit,看起来甚至不太有希望。
我想我可以用sed输出来去掉那些终端字符。还有什么其他的想法可以考虑吗?
https://stackoverflow.com/questions/73397739
复制相似问题