PATH:
usr
/
lib64
/
python2.7
/
Tools
/
scripts
#! /usr/bin/env python """(Ostensibly) fix copyright notices in files. Actually, this sript will simply replace a block of text in a file from one string to another. It will only do this once though, i.e. not globally throughout the file. It writes a backup file and then does an os.rename() dance for atomicity. Usage: fixnotices.py [options] [filenames] Options: -h / --help Print this message and exit --oldnotice=file Use the notice in the file as the old (to be replaced) string, instead of the hard coded value in the script. --newnotice=file Use the notice in the file as the new (replacement) string, instead of the hard coded value in the script. --dry-run Don't actually make the changes, but print out the list of files that would change. When used with -v, a status will be printed for every file. -v / --verbose Print a message for every file looked at, indicating whether the file is changed or not. """ OLD_NOTICE = """/*********************************************************** Copyright (c) 2000, BeOpen.com. Copyright (c) 1995-2000, Corporation for National Research Initiatives. Copyright (c) 1990-1995, Stichting Mathematisch Centrum. All rights reserved. See the file "Misc/COPYRIGHT" for information on usage and redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES. ******************************************************************/ """ import os import sys import getopt NEW_NOTICE = "" DRYRUN = 0 VERBOSE = 0 def usage(code, msg=''): print __doc__ % globals() if msg: print msg sys.exit(code) def main(): global DRYRUN, OLD_NOTICE, NEW_NOTICE, VERBOSE try: opts, args = getopt.getopt(sys.argv[1:], 'hv', ['help', 'oldnotice=', 'newnotice=', 'dry-run', 'verbose']) except getopt.error, msg: usage(1, msg) for opt, arg in opts: if opt in ('-h', '--help'): usage(0) elif opt in ('-v', '--verbose'): VERBOSE = 1 elif opt == '--dry-run': DRYRUN = 1 elif opt == '--oldnotice': fp = open(arg) OLD_NOTICE = fp.read() fp.close() elif opt == '--newnotice': fp = open(arg) NEW_NOTICE = fp.read() fp.close() for arg in args: process(arg) def process(file): f = open(file) data = f.read() f.close() i = data.find(OLD_NOTICE) if i < 0: if VERBOSE: print 'no change:', file return elif DRYRUN or VERBOSE: print ' change:', file if DRYRUN: # Don't actually change the file return data = data[:i] + NEW_NOTICE + data[i+len(OLD_NOTICE):] new = file + ".new" backup = file + ".bak" f = open(new, "w") f.write(data) f.close() os.rename(file, backup) os.rename(new, file) if __name__ == '__main__': main()
[+]
..
[-] setup.pyo
[edit]
[-] classfix.py
[edit]
[-] cvsfiles.pyo
[edit]
[-] fixps.pyc
[edit]
[-] fixdiv.py
[edit]
[-] ptags.pyc
[edit]
[-] pysource.pyc
[edit]
[-] h2py.py
[edit]
[-] svneol.py
[edit]
[-] win_add2path.pyc
[edit]
[-] suff.py
[edit]
[-] untabify.py
[edit]
[-] parseentities.py
[edit]
[-] objgraph.pyc
[edit]
[-] mailerdaemon.pyo
[edit]
[-] findlinksto.pyo
[edit]
[-] checkappend.py
[edit]
[-] fixps.py
[edit]
[-] untabify.pyo
[edit]
[-] setup.py
[edit]
[-] find_recursionlimit.pyc
[edit]
[-] nm2def.pyc
[edit]
[-] copytime.pyo
[edit]
[-] dutree.pyc
[edit]
[-] which.py
[edit]
[-] db2pickle.pyo
[edit]
[-] serve.pyo
[edit]
[-] svneol.pyc
[edit]
[-] lll.py
[edit]
[-] pindent.pyc
[edit]
[-] h2py.pyo
[edit]
[-] lll.pyo
[edit]
[-] analyze_dxp.py
[edit]
[-] byteyears.pyc
[edit]
[-] reindent-rst.pyo
[edit]
[-] serve.py
[edit]
[-] mkreal.py
[edit]
[-] ndiff.pyo
[edit]
[-] combinerefs.pyc
[edit]
[-] diff.pyc
[edit]
[-] fixnotice.pyo
[edit]
[-] texcheck.pyc
[edit]
[-] analyze_dxp.pyo
[edit]
[-] byext.py
[edit]
[-] dutree.py
[edit]
[-] which.pyc
[edit]
[-] texcheck.pyo
[edit]
[-] reindent.pyo
[edit]
[-] methfix.pyo
[edit]
[-] ndiff.py
[edit]
[-] texi2html.pyc
[edit]
[-] parseentities.pyc
[edit]
[-] checkpyc.pyc
[edit]
[-] hotshotmain.py
[edit]
[-] ftpmirror.pyo
[edit]
[-] fixps.pyo
[edit]
[-] redemo.pyo
[edit]
[-] fixcid.pyo
[edit]
[-] finddiv.pyo
[edit]
[-] which.pyo
[edit]
[-] redemo.py
[edit]
[-] suff.pyc
[edit]
[-] cleanfuture.py
[edit]
[-] combinerefs.py
[edit]
[-] ptags.pyo
[edit]
[-] byext.pyc
[edit]
[-] db2pickle.py
[edit]
[-] cvsfiles.py
[edit]
[-] pindent.py
[edit]
[-] diff.pyo
[edit]
[-] analyze_dxp.pyc
[edit]
[-] cleanfuture.pyo
[edit]
[-] dutree.pyo
[edit]
[-] eptags.pyo
[edit]
[-] pysource.py
[edit]
[-] reindent.pyc
[edit]
[-] google.pyc
[edit]
[-] logmerge.py
[edit]
[-] lfcr.py
[edit]
[-] finddiv.pyc
[edit]
[-] classfix.pyo
[edit]
[-] lfcr.pyo
[edit]
[-] treesync.py
[edit]
[-] hotshotmain.pyo
[edit]
[-] nm2def.py
[edit]
[-] byext.pyo
[edit]
[-] ftpmirror.py
[edit]
[-] treesync.pyc
[edit]
[-] copytime.py
[edit]
[-] finddiv.py
[edit]
[-] ifdef.py
[edit]
[-] patchcheck.pyo
[edit]
[-] objgraph.pyo
[edit]
[-] ptags.py
[edit]
[-] objgraph.py
[edit]
[-] cvsfiles.pyc
[edit]
[-] pysource.pyo
[edit]
[-] pathfix.py
[edit]
[-] linktree.pyc
[edit]
[-] eptags.py
[edit]
[-] patchcheck.py
[edit]
[-] mkreal.pyc
[edit]
[-] rgrep.pyc
[edit]
[-] google.py
[edit]
[-] win_add2path.py
[edit]
[-] texcheck.py
[edit]
[-] pathfix.pyo
[edit]
[-] gprof2html.py
[edit]
[-] pickle2db.pyc
[edit]
[-] findnocoding.pyc
[edit]
[-] nm2def.pyo
[edit]
[-] checkappend.pyo
[edit]
[-] texi2html.py
[edit]
[-] crlf.pyc
[edit]
[-] treesync.pyo
[edit]
[-] findlinksto.py
[edit]
[-] pdeps.pyc
[edit]
[-] fixheader.pyo
[edit]
[-] pdeps.pyo
[edit]
[-] findnocoding.py
[edit]
[-] setup.pyc
[edit]
[-] methfix.pyc
[edit]
[-] logmerge.pyo
[edit]
[-] reindent.py
[edit]
[-] hotshotmain.pyc
[edit]
[-] gprof2html.pyc
[edit]
[-] redemo.pyc
[edit]
[-] fixheader.py
[edit]
[-] diff.py
[edit]
[-] classfix.pyc
[edit]
[-] ftpmirror.pyc
[edit]
[-] google.pyo
[edit]
[-] db2pickle.pyc
[edit]
[-] pathfix.pyc
[edit]
[-] ifdef.pyo
[edit]
[-] xxci.pyc
[edit]
[-] rgrep.pyo
[edit]
[-] cleanfuture.pyc
[edit]
[-] reindent-rst.pyc
[edit]
[-] svneol.pyo
[edit]
[-] xxci.pyo
[edit]
[-] parseentities.pyo
[edit]
[-] md5sum.py
[edit]
[-] eptags.pyc
[edit]
[-] mailerdaemon.pyc
[edit]
[-] pickle2db.pyo
[edit]
[-] win_add2path.pyo
[edit]
[-] serve.pyc
[edit]
[-] byteyears.pyo
[edit]
[-] fixdiv.pyo
[edit]
[-] logmerge.pyc
[edit]
[-] pickle2db.py
[edit]
[-] checkpyc.pyo
[edit]
[-] fixdiv.pyc
[edit]
[-] find_recursionlimit.py
[edit]
[-] crlf.pyo
[edit]
[-] suff.pyo
[edit]
[-] lll.pyc
[edit]
[-] rgrep.py
[edit]
[-] untabify.pyc
[edit]
[-] ifdef.pyc
[edit]
[-] fixheader.pyc
[edit]
[-] fixcid.pyc
[edit]
[-] crlf.py
[edit]
[-] checkappend.pyc
[edit]
[-] xxci.py
[edit]
[-] findnocoding.pyo
[edit]
[-] mkreal.pyo
[edit]
[-] patchcheck.pyc
[edit]
[-] linktree.pyo
[edit]
[-] texi2html.pyo
[edit]
[-] fixcid.py
[edit]
[-] ndiff.pyc
[edit]
[-] md5sum.pyo
[edit]
[-] findlinksto.pyc
[edit]
[-] reindent-rst.py
[edit]
[-] linktree.py
[edit]
[-] byteyears.py
[edit]
[-] md5sum.pyc
[edit]
[-] copytime.pyc
[edit]
[-] combinerefs.pyo
[edit]
[-] fixnotice.py
[edit]
[-] pdeps.py
[edit]
[-] fixnotice.pyc
[edit]
[-] lfcr.pyc
[edit]
[-] checkpyc.py
[edit]
[-] methfix.py
[edit]
[-] pindent.pyo
[edit]
[-] mailerdaemon.py
[edit]
[-] gprof2html.pyo
[edit]
[-] h2py.pyc
[edit]
[-] find_recursionlimit.pyo
[edit]