By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
449,277 Members | 1,237 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 449,277 IT Pros & Developers. It's quick & easy.

Run Unix shell command $ parse command line arguments in python

P: n/a
Hello evryone

I am a newbie to python. I have a makefile which i can compile in
UNIX/LINUX, But i
I am planning to write a python script which actually does what my
MAKEFILE does. The make file is

#Makefile and some scripts to give output
#numbers
#Change till sign #END
var1:=564-574
a1 = 23
b1 = 678
kxm = ixm_7.gh
out = c$(var1)_s.gh
imageim
#END
#other files
file1 = sec$(b1).jk
file2 = sgf$(a1)
file3 = p$(b1).gh
prg3scriptfile = prg3_produce.xx
findoutdir = Dir:~/home/
x=67
#work
evrything: prg1 script2 prg3 script4
withoutprg1: script2 prg3 script4
prg1:
s$(ca)$(d) .

script2: Makefile
./script2 -i '$(file2)' -o '$(file1)' -a $(x) -n

prg3:
: > $(prg3scriptfile)
$(prg3scriptfile)

prg3 $(prg3scriptfile)
rm $(prg3scriptfile)
script4:
./script4 $(kxm) $(file2) $(out) $(var1)

I want to write a python script to replace this Makefile.
I Have tried using getopt/optparse for parsing command line options
How to Run Unix shell command from python.

My Task is

Myprg.py a1 b1 kxm out

Kindly suggest me some ideas/comments.

Thanks
koid wayne

Jul 19 '05 #1
Share this Question
Share on Google+
4 Replies


P: n/a
On 21 Apr 2005 23:39:03 -0700, rk****@yahoo.com <rk****@yahoo.com> wrote:
Kindly suggest me some ideas/comments.


Why don't you make a start, and come back to us with whatever problems
you encounter? We're happy to help, but we aren't going to do it for
you.

Andrew Dalke's "Wrapping command-line programs" series might come in
handy: http://www.dalkescientific.com/writi..._programs.html

--
Cheers,
Simon B,
si***@brunningonline.net,
http://www.brunningonline.net/simon/blog/
Jul 19 '05 #2

P: n/a
hue
Thanks for your reply

I started writing the script.. I have gone through documentation for
getopt

import string, getopt, sys

def usage():

print '''myscript.py -- uses getopt to recognize options
Options: -n -- No
-t -- T
-h -- help
-i -- i
-o -- Output:filename'''
sys.exit(1)
def main():

print "SYS ARGV: ", ",".join(sys.argv)

# Define the Options

Options = {
'n:': 'Number=',
't:': 'T',
'h' : 'help',
'i' : 'i',
'o' : 'Output_file',
}
shortOpts = ''.join(Options.keys())
longOpts = Options.values()
try:
(opts, args) = getopt.getopt(argv[1:], shortOpts, longOpts)
except getopt.error, msg:
print "Unrecognized argument or option"
# end try
for (opt, arg) in opts:

if opt in ('-n', '--Number'):
print '-n is the Number', Number
sys.exit()

elif opt in ('-t', '--T'):
print '-t is the T', T
sys.exit()

elif opt in ('-h', '--help'):
usage()
print " "
sys.exit()

elif opt in ('-i', '--i'):
print " I", i
elif opt in ('-o', '--Output Filename'):
print "Output", Output
# end if
# end for

print "OPTS: ", ",".join([repr(o) for o in opts])
print "ARGS: ", ",".join(args)

if __name__ == "__main__":
main()

with the above code, I am planning to do command line parsing. But how
to run unix shell command? DO i have to use os Module/ import command?

How should i proceed further, to
import commands
commands.getstatusoutput('ls /bin/ls')

Please suggest me some ideas how to proceed further

Thanks

Jul 19 '05 #3

P: n/a
On 22 Apr 2005 03:16:02 -0700, hue <pr*********@gmail.com> wrote:
Thanks for your reply

I started writing the script.. I have gone through documentation for
getopt
(snip)

Good start. I tend to prefer optparse over getopt these days, but if
you've got it working the way you want it, you should probably stick
with what you have.
with the above code, I am planning to do command line parsing. But how
to run unix shell command? DO i have to use os Module/ import command?

How should i proceed further, to
import commands
commands.getstatusoutput('ls /bin/ls')


You'll certainly need to import *something*. Have you looked at the
subprocess module?

--
Cheers,
Simon B,
si***@brunningonline.net,
http://www.brunningonline.net/simon/blog/
Jul 19 '05 #4

P: n/a
On Friday 22 April 2005 01:39 am, rk****@yahoo.com wrote:
I am a newbie to python. I have a makefile which i can compile in
UNIX/LINUX, But i
I am planning to write a python script which actually does what my
MAKEFILE does. The make file is [...] I want to write a python script to replace this Makefile.
I Have tried using getopt/optparse for parsing command line options
How to Run Unix shell command from python.


Read the documentation on the "os" and "popen2" modules under
"generic operating system services" in the Python Standard Library
Manual (go to http://www.python.org if you haven't already got this
manual on hand).

Cheers,
Terry

--
Terry Hancock ( hancock at anansispaceworks.com )
Anansi Spaceworks http://www.anansispaceworks.com

Jul 19 '05 #5

This discussion thread is closed

Replies have been disabled for this discussion.