I'm using Python 2.6. After checking the following link: Running shell command from Python and capturing the output Here is the code I plan to do:
import subprocess # input: user email account # output: mailing list which contain the user as an owner def list_owners (usr_eml): p = subprocess.Popen(['/usr/lib/mailman/bin/find_member','-w'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, stdin=subprocess.PIPE) out, err = p.communicate(usr_eml) print out m_list_usr_on = out.split( ) print m_list_usr_on list_owners("my_email")
The output of this code is simply empty. On the other hand, if I run the code
/usr/lib/mailman/bin/find_member -w my_email
directly from the shell command, I got the desired results. Could you explain to me the possible reasons of it? Thank you!