passing arguments like -JOB

John Leslie johnleslie at madasafish.com
Fri Feb 11 04:47:01 EST 2005


Thanks...it worked perfectly.
Brilliant!!

JL


Duncan Booth <duncan.booth at invalid.invalid> wrote in message news:<Xns95F98B4F52031duncanrcpcouk at 127.0.0.1>...
> John Leslie wrote:
> 
> > I am porting a script from Korn Shell to python and want to pass named
> > parameters like -JOB 123456 -DIR mydir
> > 
> > I can get it to work passing --JOB and --DIR but not -JOB and -DIR
> > 
> > Any ideas?
> > 
> Unfortunately (for you), I think you will find most or all of the existing 
> ways to parse command line options in Python follow the POSIX convention 
> for arguments, i.e. single letter options are introduced with a single - 
> and multi-letter options are introduced with --.
> 
> My guess is that if you can't change whatever generates the command lines 
> to conform to this convention you will have to write your own code to do 
> the processing.
> 
> Alternatively you might get by by hacking the command line in your Python 
> code:
> 
>    for i, opt in enumerate(sys.argv):
>        if opt in ('-JOB','-DIR', '-ERR', '-GRP', '-TST', '-JNM', '-DAT'):
>           sys.argv[i] = '-'+opt
> 
>    ... and then use getopt or optparse here ...
> 
> It isn't pretty, but so long as those values don't turn up elsewhere in the 
> command line it ought to work.



More information about the Python-list mailing list