Revision bf24401a1f9cc8f4122405c7de1051d7823b6f0c authored by Andrew MacIntyre on 01 October 2008, 03:25:25 UTC, committed by Andrew MacIntyre on 01 October 2008, 03:25:25 UTC
FreeBSD 7's underlying malloc() is behaves differently to earlier versions
and seriously overcommits available memory on amd64.  This may affect
other 64bit platforms in some circumstances, so the scale of the
problematic test is wound back.

Patch by Mark Dickinson, reviewed by Martin von Loewis.
1 parent 0806749
Raw File
zappycfiles.py
#!/usr/local/bin/python
"""Recursively zap all .pyc and .pyo files"""
import os
import sys

# set doit true to actually delete files
# set doit false to just print what would be deleted
doit = 1

def main():
    if not sys.argv[1:]:
        if os.name == 'mac':
            import EasyDialogs
            dir = EasyDialogs.AskFolder(message='Directory to zap pyc files in')
            if not dir:
                sys.exit(0)
            zappyc(dir)
        else:
            print 'Usage: zappyc dir ...'
            sys.exit(1)
    for dir in sys.argv[1:]:
        zappyc(dir)

def zappyc(dir):
    os.path.walk(dir, walker, None)

def walker(dummy, top, names):
    for name in names:
        if name[-4:] in ('.pyc', '.pyo'):
            path = os.path.join(top, name)
            print 'Zapping', path
            if doit:
                os.unlink(path)

if __name__ == '__main__':
    main()
back to top