我使用简单的bash脚本为多个目录运行pylint:
#!/usr/bin/env bash
set -e
for PACKAGE in some_dir another_dir third_dir
do
pylint --disable=R,C $PACKAGE
done
如果一切正常,我希望输出干净。然而,有令人讨厌的线:
Using config file /home/user/projects/some-project/.pylintrc
pylintrc
或pylint
命令行中是否有选项可禁用"使用配置文件"?
更新:有一个未解决的问题https://github.com/PyCQA/pylint/issues/1853
答案 0 :(得分:2)
如果它仍与任何人相关,则此PR to pylint可解决此问题。从pylint 2.0
开始,您只需将--quiet
标记传递给pylint
。
修改:如果您使用较旧的pylint,则可以使用grep
重定向和排除:
pylint 2>&1 | grep -v "Using config file"
答案 1 :(得分:2)
@Jan Jurec的答案已经过时,他们在posterior commit中将静默命令标志重命名为--verbose
。现在,pylint
默认为“安静”。
但是,它仍然不够安静,因为默认情况下它会打印如下分数:
D:\tests>pylint --disable=I,E,R,W,C,F --enable=E0102 --reports=no test.py
---------------------------------------------------------------------
Your code has been rated at 10.00/10 (previous run: -2.50/10, +12.50)
D:\tests>
但是您用-sn
禁用了它们,那么在没有发现问题的情况下,较旧的示例将变为以下形式:
D:\tests>pylint --disable=I,E,R,W,C,F --enable=E0102 --reports=no -sn test.py
D:\tests>
如果发现问题,输出将如下所示:
D:\tests>pylint --disable=I,E,R,W,C,F --enable=E0102 --reports=no -sn test.py
************* Module test
test.py:6:0: E0102: class already defined line 3 (function-redefined)
D:\tests>
代替此默认值:
D:\tests>pylint --disable=I,E,R,W,C,F --enable=E0102 --reports=no test.py
************* Module test
test.py:6:0: E0102: class already defined line 3 (function-redefined)
---------------------------------------------------------------------
Your code has been rated at -2.50/10 (previous run: 10.00/10, -12.50)
D:\tests>