Due to data buffering issues, you should use a carriage return followed by a newline (ASCII 13 and 10, respectively) instead of a pipe to separate the data. (only one or the other might work, but both will surely work...)
After that, you can just read it with the read command. Like this: cat /dev/ttyS0 | ./myscript and myscript can be something like: #!/bin/bash while true do read a date=`date` echo "$date: $a" done Ryan's idea using cut won't work (sorry Ryan!) because the data is streamed. If, for some reason, you can't change the pipe to <CR><NL>, then you need to turn off buffering and parse the data but... you don't wanna go there. Also, if you wanna read the data every 10 seconds, you might wanna send the data every 10 seconds, too, since the serial port is buffered. Otherwise you gotta flush the data before reading, and BSII might freeze trying to send the data, and... yeah, you don't wanna go there either. -Mark On Wed, 8 Oct 2003, dylan wrote: > hi- > > been playing around with using a basic stamp II to collect environmental > data with very minimal setup (CdS cell and capacitor form an RC network, RC > constant is measured by BS II) > [http://surfdavis.no-ip.com/~dylan/light_level.p2.png] > > the BSII sends its data to /dev/ttyS0, and it is read in with the > command'cat /dev/ttyS0 > tmp.light &' . data is parsed by a simple awk > script and then sent to ploticus for a nice plot. the plot is updated by > running a shell script that runs the awk sript and then ploticus. > > this works, but there is no way to associate a time with the data values. i > was thinking that if there was some way to have a bash script read from > /dev/ttyS0 every 10 seconds or so, save the value to a text file along with > a date stamp it would be pretty neat. > > the output from the BSII looks something like this: > light_level|light_level|light_level and so on (the delimiter is a pipe) > > now to the question: does anyone know how to make bash read from a file > (i.e. the serial port) from one pipe until another pipe, and then save the > value in between to a text file? > > i know this is asking a lot, but any pointers would be great! > > thanks a lot! > > dylan > > _______________________________________________ > vox-tech mailing list > [EMAIL PROTECTED] > http://lists.lugod.org/mailman/listinfo/vox-tech > -- Mark K. Kim http://www.cbreak.org/ PGP key available on the website PGP key fingerprint: 7324 BACA 53AD E504 A76E 5167 6822 94F0 F298 5DCE _______________________________________________ vox-tech mailing list [EMAIL PROTECTED] http://lists.lugod.org/mailman/listinfo/vox-tech