Like µsli I bought the Sony GPS-C1 GPS receiver the other day. It's a little device that tracks your current position every 15 seconds. You can then copy this data to your PC and have all your fotos geotagged. What does that mean? The exact geographical location where the picture was taken is being saved right within the picture! So for all your holiday pictures, road trips you will be able to tell exactly where your pictures were taken. The result can be a very cool map like this:

The green dots represent places the pictures were taken, you can click them to see them. I just got my GPS-C1 and hence have no tagged photos yet. But now to the actual reason for writing this blog entry. The GPS-C1 logs it's data in a propietary format calld NMEA (*.log files) which has luckily been reverse engineered.
To convert from different formats for saving routes/tracks/waypoints there is a great software called gpsbabel. It lets you translate from and to virtually every format. I was in the situation where I had to convert about 100 files from *.log to *.gpx (see GPX). So here is a bash shell script that will batch convert all .log files in a directory to .gpx files:
#!/bin/bash
for i in `ls *.log`; do
out=${i%%.*}
gpsbabel -i nmea -f $i -o gpx -F $out.gpx
done
Put this into a file, say "convertall", in the directory where you have your .log files and just execute:
./convertall
For each .log file you now have a .gpx file with the same name in the GPX format.