Commit ca83f018 authored by Guido van Rossum's avatar Guido van Rossum

Added "-n file" option to only print files newer than the given file.

parent e2d4dd19
#! /usr/bin/env python #! /usr/bin/env python
"""Create a list of files that are mentioned in CVS directories.""" """Print a list of files that are mentioned in CVS directories.
Usage: cvsfiles.py [-n file] [directory] ...
If the '-n file' option is given, only files under CVS that are newer
than the given file are printed; by default, all files under CVS are
printed. As a special case, if a file does not exist, it is always
printed.
"""
import os import os
import sys import sys
import stat
import getopt
import string import string
cutofftime = 0
def main(): def main():
args = sys.argv[1:] try:
opts, args = getopt.getopt(sys.argv[1:], "n:")
except getopt.error, msg:
print msg
print __doc__,
return 1
global cutofftime
newerfile = None
for o, a in opts:
if o == '-n':
cutofftime = getmtime(a)
if args: if args:
for arg in args: for arg in args:
process(arg) process(arg)
...@@ -32,8 +54,19 @@ def process(dir): ...@@ -32,8 +54,19 @@ def process(dir):
words = string.split(e, '/') words = string.split(e, '/')
if words[0] == '' and words[1:]: if words[0] == '' and words[1:]:
name = words[1] name = words[1]
print os.path.join(dir, name) fullname = os.path.join(dir, name)
if cutofftime and getmtime(fullname) <= cutofftime:
pass
else:
print fullname
for sub in subdirs: for sub in subdirs:
process(sub) process(sub)
main() def getmtime(filename):
try:
st = os.stat(filename)
except os.error:
return 0
return st[stat.ST_MTIME]
sys.exit(main())
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment