logo
Free, unlimited AI code reviews that run on commit
git-lrc git-lrc GitHub Install Now We'd appreciate a star git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt git-lrc - Free, unlimited AI code reviews that run on commit | Product Hunt

osmium-cat - concatenate OSM files and convert to different formats

Authors

       Jochen Topf <jochen@topf.org>.

                                                     1.17.0                                        OSMIUM-CAT(1)

Common Options

       -h, --help
              Show usage help.

       -v, --verbose
              Set verbose mode.  The program will output information about what it is doing to STDERR.

       --progress
              Show progress bar.  Usually a progress bar is only displayed if STDOUT and STDERR are detected  to
              be  TTY.  With this option a progress bar is always shown.  Note that a progress bar will never be
              shown when reading from STDIN or a pipe.

       --no-progress
              Do not show progress bar.  Usually a progress bar is displayed if STDOUT and STDERR  are  detected
              to  be  a  TTY.   With  this option the progress bar is suppressed.  Note that a progress bar will
              never be shown when reading from STDIN or a pipe.

Contact

       If you have any questions or want to report a bug, please go to https://osmcode.org/contact.html

Description

       Concatenates all input files and writes the result to the output file.  The data is not sorted in any way
       but strictly copied from input to output.

       Because  this  program supports several different input and output formats, it can be used to convert OSM
       files from one format into another.

       This commands reads its input file(s) only once and writes its output  file  in  one  go  so  it  can  be
       streamed, ie.  it can read from STDIN and write to STDOUT.

       Usually this is not the right command to merge two or more typical OSM files, see osmiummerge for that.

Diagnostics

osmiumcat exits with exit code

       0      if everything went alright,

       1      if there was an error processing the data, or

       2      if there was a problem with the command line arguments.

Examples

       Convert a PBF file to a compressed XML file:

              osmium cat -o out.osm.bz2 in.osm.pbf

       Concatenate all change files in the `changes' directory into one:

              osmium cat -o all-changes.osc.gz changes/*.osc.gz

       Copy nodes and ways from source to destination file:

              osmium cat -o dest.osm.pbf source.osm.pbf -t node -t way

       Remove changeset, uid, and user from a file to protect personal data:

              osmium cat -c changeset -c uid -c user -o cleaned.osm.pbf data.osm.pbf

Input Options

       -F, --input-format=FORMAT
              The format of the input file(s).  Can be used to set the input format if it can’t be  autodetected
              from  the  file name(s).  This will set the format for all input files, there is no way to set the
              format for some input files only.  See osmium-file-formats(5) or the libosmium manual for details.

Memory Usage

osmiumcat does all its work on the fly and doesn’t keep much data in main memory.

Name

       osmium-cat - concatenate OSM files and convert to different formats

Options

       -c, --clean=ATTR
              Clean  the  attribute  (version, timestamp, changeset, uid, user), from the data before writing it
              out again.  The attribute will be set to 0 (the user will be  set  to  the  empty  string).   This
              option can be given multiple times.  Depending on the output format these attributes might show up
              as 0 or not show up at all.

       -t, --object-type=TYPE
              Read  only objects of given type (node, way, relation, changeset).  By default all types are read.
              This option can be given multiple times.

       --buffer-data
              Read all input files into memory and only then write out all the data.  This will need  a  lot  of
              memory  and  is  usually slower than a normal copy.  Used for timing the reading and writing phase
              separately.

Output Options

       -f, --output-format=FORMAT
              The format of the output file.  Can be used  to  set  the  output  file  format  if  it  can’t  be
              autodetected  from  the  output file name.  See osmium-file-formats(5) or the libosmium manual for
              details.

       --fsync
              Call fsync after writing the output file to force flushing buffers to disk.

       --generator=NAME
              The name and version of the program generating the output file.  It will be added to the header of
              the output file.  Default is “osmium/” and the version of osmium.

       -o, --output=FILE
              Name of the output file.  Default is `-' (STDOUT).

       -O, --overwrite
              Allow an existing output file to be overwritten.  Normally osmium will refuse  to  write  over  an
              existing file.

       --output-header=OPTION=VALUE
              Add  output  header  option.   This  command  line option can be used multiple times for different
              OPTIONs.  See the osmium-output-headers(5) man page for a list of available header  options.   For
              some  commands you can use the special format “OPTION!” (ie.  an exclamation mark after the OPTION
              and no value set) to set the value to the same as in the input file.

See Also

osmium(1), osmium-file-formats(5), osmium-merge(1), osmium-output-headers(5)

       • Osmium website

Synopsis

osmiumcat [OPTIONS] OSM-FILE...

See Also