mirror of
				https://github.com/python/cpython.git
				synced 2025-10-30 21:21:22 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			775 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			775 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| #!/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 macfs
 | |
| 			fss, ok = macfs.GetDirectory('Directory to zap pyc files in')
 | |
| 			if not ok:
 | |
| 				sys.exit(0)
 | |
| 			dir = fss.as_pathname()
 | |
| 			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()
 | |
| 	
 | 
