OLD | NEW |
| (Empty) |
1 #!/usr/bin/env python | |
2 # Copyright 2014 The Chromium Authors. All rights reserved. | |
3 # Use of this source code is governed by a BSD-style license that can be | |
4 # found in the LICENSE file. | |
5 | |
6 """Delete files in directories matching a pattern. | |
7 """ | |
8 | |
9 import glob | |
10 import optparse | |
11 import os | |
12 import sys | |
13 | |
14 from util import build_utils | |
15 | |
16 def main(): | |
17 parser = optparse.OptionParser() | |
18 parser.add_option( | |
19 '--pattern', | |
20 help='Pattern for matching Files to delete.') | |
21 parser.add_option( | |
22 '--keep', | |
23 help='Files to keep even if they matches the pattern.') | |
24 parser.add_option( | |
25 '--stamp', | |
26 help='Path to touch on success') | |
27 | |
28 options, args = parser.parse_args() | |
29 | |
30 if not options.pattern or not args: | |
31 print 'No --pattern or target directories given' | |
32 return | |
33 | |
34 for target_dir in args: | |
35 target_pattern = os.path.join(target_dir, options.pattern) | |
36 matching_files = glob.glob(target_pattern) | |
37 | |
38 keep_pattern = os.path.join(target_dir, options.keep) | |
39 files_to_keep = glob.glob(keep_pattern) | |
40 | |
41 for target_file in matching_files: | |
42 if target_file in files_to_keep: | |
43 continue | |
44 | |
45 if os.path.isfile(target_file): | |
46 os.remove(target_file) | |
47 | |
48 if options.stamp: | |
49 build_utils.Touch(options.stamp) | |
50 | |
51 if __name__ == '__main__': | |
52 sys.exit(main()) | |
53 | |
OLD | NEW |