Clearly, I made some typing mistake, it's the shbang line! it should be: #!/usr/bin/python
then, just set os.environ is okay: os.environ["target"] = "localhost.localdomain.org" according python's documentation, setting os.environ will implicitly call os.putenv(). 2008/2/27, Rockins Chen <[EMAIL PROTECTED]>: > > Hi all, > > I encountered a problem: I have a python script, let's just name it > caller.py, It calls a shell script, which is named callee.sh. In callee.sh, > it need a shell variable $target, which should be supplied by caller.py(cannot > pass by argument). I try to use os.environ to do this, as follows: > > caller.py > ------------------ > #/usr/bin/python > > import os > > os.environ["target"] = "localhost.localdomain.org" > os.putenv("target", "localhost.localdomain.org") > os.system("./callee.sh") > ------------------- > > callee.sh > ------------------- > #!/bin/bash > > echo $target > exit 0 > -------------------- > > But, unluckily, it didn't work. What can I do? > > TIA, > > > -- > BRs, > Rockins Chen > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > UESTC, Chengdu, Sichuan, China > http://www.dormforce.net/blog/rockins > http://rockins.cublog.cn > [EMAIL PROTECTED] -- BRs, Rockins Chen ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ UESTC, Chengdu, Sichuan, China http://www.dormforce.net/blog/rockins http://rockins.cublog.cn [EMAIL PROTECTED]
-- http://mail.python.org/mailman/listinfo/python-list