1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
|
#!/usr/bin/env python
import sys, os, stat
def clean(path):
global count
try:
content = os.listdir(path)
except OSError:
print >> sys.stderr, "skipping", path
return
for fn in content:
filename = os.path.join(path, fn)
st = os.lstat(filename)
if stat.S_ISDIR(st.st_mode):
clean(filename)
if fn == '__pycache__':
try:
os.rmdir(filename)
except OSError:
pass
elif fn.endswith('.pyc') or fn.endswith('.pyo'):
os.unlink(filename)
count += 1
count = 0
for arg in sys.argv[1:] or ['.']:
print "cleaning path", arg, "of .pyc/.pyo/__pycache__ files"
clean(arg)
print "%d files removed" % (count,)
|