Mercurial > cpython-lru_cache-weakref
diff Demo/scripts/script.py @ 56480:ca018e2bb865 legacy-trunk
Use getopt in script.py demo.
| author | Georg Brandl <georg@python.org> |
|---|---|
| date | Sun, 11 Oct 2009 12:00:18 +0000 |
| parents | 2bc66f1df7cc |
| children | 52d6973cbd94 |
line wrap: on
line diff
--- a/Demo/scripts/script.py Sun Oct 11 10:01:17 2009 +0000 +++ b/Demo/scripts/script.py Sun Oct 11 12:00:18 2009 +0000 @@ -1,4 +1,5 @@ #! /usr/bin/env python + # script.py -- Make typescript of terminal session. # Usage: # -a Append to typescript. @@ -6,7 +7,7 @@ # Author: Steen Lumholt. -import os, time, sys +import os, time, sys, getopt import pty def read(fd): @@ -19,15 +20,23 @@ mode = 'w' if os.environ.has_key('SHELL'): shell = os.environ['SHELL'] -if '-a' in sys.argv: - mode = 'a' -if '-p' in sys.argv: - shell = 'python' + +try: + opts, args = getopt.getopt(sys.argv[1:], 'ap') +except getopt.error, msg: + print '%s: %s' % (sys.argv[0], msg) + sys.exit(2) -file = open(filename, mode) +for o, a in opts: + if o == '-a': + mode = 'a' + elif o == '-p': + shell = 'python' + +script = open(filename, mode) sys.stdout.write('Script started, file is %s\n' % filename) -file.write('Script started on %s\n' % time.ctime(time.time())) +script.write('Script started on %s\n' % time.ctime(time.time())) pty.spawn(shell, read) -file.write('Script done on %s\n' % time.ctime(time.time())) +script.write('Script done on %s\n' % time.ctime(time.time())) sys.stdout.write('Script done, file is %s\n' % filename)
