On Tue, 04 Apr 2017 08:01:42 -0700, venkatachalam.19 wrote:

> Hello All,
> 
> I am writing a python code for processing a data obtained from a sensor. The 
> data from sensor is obtained by executing a python script. The data obtained 
> should be further given to another python module where the received data is 
> used for adjusting the location of an object.
> 
> For achieving this, there is a central bash script, which runs both the 
> python modules parallel. Something like:
> 
> python a.py &
> python b.py &

What is going on that two python scripts are needed?  Which one generates the 
data needed by the bash script?

> I am trying to return the sensor data to the bash .sh file, therefore it can 
> be provided to the other script. This, based on the online tutorials looks 
> like:
> 
> sensor_data=$(python execute_sensor_process.py) &

Presumably <sensor_data> is simply getting the exit status code from the python 
interpreter, not the data, right?
What are you seeing?

> and the sensor_data is assigned by printing the required data in the 
> corresponding python script. For example, the data is printed in 
> execute_sensor_process.py as follows:
> 
> print >>sys.stderr,sens_data
> 
> By printing the data onto sys.stderr and assigning a return variable in the 
> bash, I am expecting the data to be assigned.

Assigned to what?  Some return variable in bash?  What??
Why not use stdout?  Either pipe the data from python directly into a (possibly 
modified) bash script,
or into a file which gets read by the bash script.
 
> But this is not happening. The sensor data is a dictionary and I like to have 
> this data for further analysis. I am not getting the data returned from the 
> python script on to the bash variable.

Bash doesn't have dictionaries like python.  Why is bash needed?
 
> Can someone help me to understand why the code is not working? I tried other 
> approaches of function call such as

You haven't given us enough of the code to really answer. 

> sensor_data=$`python execute_sensor_process.py` &
> 
> python execute_sensor_process.py tempfile.txt &
> kinexon_data=`cat tempfile.txt` &
> 
> But none of the approaches are working.
> 
> Thank you,
> Venkatachalam Srinivasan

I wonder if you could completely eliminate the bash script - do it all in 
python.
I've written quite a few bash scripts, but not so many since I started using
python.  Only exception is for low level functions on systems without a 
functioning
python.
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to