我重命名了一个相当大的项目中的一些文件,并想删除他们留下的.pyc文件。我尝试了bash脚本:
rm -r *.pyc
但它并没有像我想的那样递归遍历文件夹。我做错了什么?
我重命名了一个相当大的项目中的一些文件,并想删除他们留下的.pyc文件。我尝试了bash脚本:
rm -r *.pyc
但它并没有像我想的那样递归遍历文件夹。我做错了什么?
当前回答
你可以运行find。- name”*。Pyc " -type f -delete。
但要谨慎使用。首先运行查找。- name”*。Pyc”键入f以查看要删除的文件。
此外,确保-delete是命令中的最后一个参数。如果你把它放在名字*之前。Pyc参数,它将删除所有内容。
其他回答
find . -name "*.pyc" -exec rm -f {} \;
删除当前目录下的所有python编译文件。
find . -name "__pycache__"|xargs rm -rf
find . -name "*.pyc"|xargs rm -rf
Rm -r递归到目录中,但只有你给Rm的目录。它还会删除这些目录。一个解决方案是:
for i in $( find . -name *.pyc )
do
rm $i
done
Find会找到所有*。Pyc文件递归到当前目录中,for循环将遍历找到的文件列表,删除每个文件。
我曾经用过一个别名
$ which pycclean
pycclean is aliased to `find . -name "*.pyc" | xargs -I {} rm -v "{}"'
此外,人们通常希望删除所有*。佩克,*。Pyo文件和__pycache__目录递归在当前目录中。
命令:
find . | grep -E "(__pycache__|\.pyc|\.pyo$)" | xargs rm -rf