Pylint以递归方式输入给定的文件名

时间:2011-06-06 20:19:34

标签: python django pylint

我有一个Django项目,我正在研究Pylinting。

我有几种情况,我希望能够以递归方式查找具有给定名称的所有文件,并以不同的方式使用不同的选项(使用不同的选项)。例如,我想为pylinting urls.py和admin.py

设置不同的选项

以下适用于1个目录..

pylint ./project_name/*/urls.py

但是我想让*递归...以便它钻进子目录。

有任何方法可以实现这一目标吗?


更新 我也希望它们都作为单个pylint输出运行,而不是按顺序运行

3 个答案:

答案 0 :(得分:15)

根据您的操作系统,您可以使用:

find project_name -name urls.py | xargs pylint

答案 1 :(得分:4)

尝试使用find:

find ./project_name/ -name "urls.py" -exec pylint '{}' \;

如果您想在一次调用pylint中运行多个文件:

find ./project_name/ -name "urls.py" -exec pylint '{}' +

答案 2 :(得分:3)

  • 获取所有python文件(递归)
  • 将它们全部传递给pylint(来自Robin的回答)
  • 在控制台中显示输出并将其放入文件

find . -name "*.py" -print0 | xargs -0 pylint 2>&1 | tee err_pylint.rst~