summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2009-10-11 12:00:18 (GMT)
committerGeorg Brandl <georg@python.org>2009-10-11 12:00:18 (GMT)
commitce662d0467c302d3a37d4cfb7d4626a48794f60e (patch)
treeac43655339f6911ba15b0ce0f651b658e2b2b750
parent9bb796597d5f493a066e9b865bbbbae3b19dab4e (diff)
downloadcpython-ce662d0467c302d3a37d4cfb7d4626a48794f60e.zip
cpython-ce662d0467c302d3a37d4cfb7d4626a48794f60e.tar.gz
cpython-ce662d0467c302d3a37d4cfb7d4626a48794f60e.tar.bz2
Use getopt in script.py demo.
-rwxr-xr-xDemo/scripts/script.py25
1 files changed, 17 insertions, 8 deletions
diff --git a/Demo/scripts/script.py b/Demo/scripts/script.py
index 6eaa7ae..efcecc5 100755
--- a/Demo/scripts/script.py
+++ b/Demo/scripts/script.py
@@ -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 @@ filename = 'typescript'
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'
-file = open(filename, mode)
+try:
+ opts, args = getopt.getopt(sys.argv[1:], 'ap')
+except getopt.error, msg:
+ print '%s: %s' % (sys.argv[0], msg)
+ sys.exit(2)
+
+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)