Argument are processed in the order they appear on the command line and are translated internally into a pipeline that data flows through when executed. Normally one would:
|read from one input
|optionally apply filters
|write into one output
but GPSBabel is flexible enough to allow more complicated operations such as reading from several files (potentially of different types), applying a filter, reading more data, then writing the merged data to multiple destinations.
The input file type remains unchanged until a new
argument is seen.
Files are read in the order they appear. So you could merge
three input files into one output file with:
Example 2.3. Merging multiple files into one
gpsbabel -i geo -f 1.loc -f 2.loc -f 3.loc -o geo -F big.loc
You can merge files of different types:
Example 2.4. Merging multiple files of differing types.
gpsbabel -i geo -f 1.loc -i gpx -f 2.gpx -i pcx 3.pcx -o gpsutil -F big.gps
Example 2.5. Writing the same data in multiple output formats.
You can write the same data in different output formats:
gpsbabel -i geo -f 1.loc -o gpx -F 1.gpx -o pcx -F 1.wpt