我重命名了一个相当大的项目中的一些文件,并想删除他们留下的.pyc文件。我尝试了bash脚本:
rm -r *.pyc
但它并没有像我想的那样递归遍历文件夹。我做错了什么?
我重命名了一个相当大的项目中的一些文件,并想删除他们留下的.pyc文件。我尝试了bash脚本:
rm -r *.pyc
但它并没有像我想的那样递归遍历文件夹。我做错了什么?
当前回答
Django扩展
注意:这个答案非常特定于已经使用了Django Extension的Django项目。
python manage.py clean_pyc
实现可以在源代码中查看。
其他回答
Django扩展
注意:这个答案非常特定于已经使用了Django Extension的Django项目。
python manage.py clean_pyc
实现可以在源代码中查看。
添加到~/.bashrc:
pyclean () {
find . -type f -name "*.py[co]" -delete
find . -type d -name "__pycache__" -delete
}
这将删除所有.pyc和.pyo文件,以及__pycache__目录。它也非常快。
用法很简单:
$ cd /path/to/directory
$ pyclean
删除当前目录下的所有python编译文件。
find . -name "__pycache__"|xargs rm -rf
find . -name "*.pyc"|xargs rm -rf
我曾经用过一个别名
$ which pycclean
pycclean is aliased to `find . -name "*.pyc" | xargs -I {} rm -v "{}"'
如果你想删除所有*。Pyc文件和__pycache__目录递归在当前目录:
python:
import os
os.popen('find . | grep -E "(__pycache__|\.pyc|\.pyo$)" | xargs rm -rf')
或手动使用终端或cmd:
find . | grep -E "(__pycache__|\.pyc|\.pyo$)" | xargs rm -rf