getopts confusion
Rob Brown-Bayliss
rob at ZOOstation.cc
Thu Jun 28 00:57:16 EDT 2001
Hi, I have a problem with getopt on a linux system.
I have two python progs, one works and one does not. Both import:
string, sys, getopt
This one WORKS:
global verbose, log, upload, download, MasterServer
try:
opts, args = getopt.getopt(sys.argv[1:], "hvlud", ["help", "verbose",
"log", "upload", "download"])
except getopt.error:
# print help information and exit:
usage()
sys.exit(2)
for o, a in opts:
if o in ("-h", "--help"):
usage()
sys.exit()
if o in ("-v", "--verbose"):
verbose = 1
if o in ("-l", "--log"):
log = 1
openlog("Syncro",LOG_NDELAY,LOG_DAEMON)
syslog(LOG_NOTICE,"Starting Syncronisation run")
if o in ("-u", "--upload"):
upload = 1
if o in ("-d", "--download"):
download = 1
This one FAILS with:
Error on option -s: unknown option.
Run './gearbox.py --help' to see a full list of available command line
options.
The code is:
global wTree, GearBox, Status, showsum
try:
opts, args = getopt.getopt(sys.argv[1:], "hsz", ["help", "summary",
"zoo"])
print getopt.getopt(sys.argv[1:], "hsz", ["help", "summary", "zoo"])
except Error, msg:
# print help information and exit:
usage()
sys.exit(2)
for o, a in opts:
if o in ("-h", "--help"):
usage()
sys.exit()
if o in ("-s", "--summary"):
showsum = 1
print "ssss"
if o in ("-z", "--zoo"):
zoo = 1
The one that fails fais for all opts, but if I give args rather than
options it passes ok (as in I can print the args out)
Any one know whats going on? Any clues are welcome
Thanks
--
Rob Brown-Bayliss
---======o======---
More information about the Python-list
mailing list