Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to run a python script from another python script and get the returned status code?

Tags:

python

bash

I'm relatively new to both Python and bash. However, I am finding Python much more intuitive and easier than bash. I have a few bash scripts I have managed to cobble together, but I would like to replace them with Python scripts - for ease of maintenance etc.

The bash scripts essentially run python scripts, check the returned status code and act appropriately (e.g. log a message, fire off an email etc) - this is functionality that I thing I can for the most part, reproduce in a Python script.

The one thing I am not sure of how to do, is how to run a python script from another python script and get the returned status code.

Can anyone post a snippet here that will show how to run a small python script 'test.py' from a main python script 'master.py' and correctly retrieve the return code after running test.py from master.py?

like image 536
Homunculus Reticulli Avatar asked Jan 04 '12 09:01

Homunculus Reticulli


1 Answers

Using subprocess module

master.py

import subprocess
retcode = subprocess.call(["/usr/bin/python", "/path/to/test.py"])
print "Return code of test.py is ", retcode
like image 84
Cédric Julien Avatar answered Sep 30 '22 08:09

Cédric Julien