Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
OSMIUM-SORT(1)							  OSMIUM-SORT(1)

NAME
     osmium-sort - sort OSM files

SYNOPSIS
     osmium sort [OPTIONS] OSM-FILE...

DESCRIPTION
     Combines  and  sorts  the	content  of all input files given on the command
     line.

     Objects are sorted by type, ID, and version.  IDs are sorted  negative  IDs
     first,  then  positive  IDs, both ordered by their absolute values.  So the
     sort order for types and IDs is:

     node -1, node -2, ..., node 1, node 2, ..., way -1, way -2, ..., way 1, way
     2, ..., relation -1, relation -2, ..., relation 1, relation 2, ...

     If there are several objects of the same type and with the same ID they are
     ordered by ascending version.  If there are several  objects  of  the  same
     type  and	with the same ID and version the sort order is unspecified.  Du-
     plicate objects will not be removed.

     This command works with normal OSM data files, history  files,  and  change
     files.

     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.  (Unless the multipass strategy is used.)

OPTIONS
     -s, --strategy=STRATEGY
	    Sorting  strategy.	The "simple" strategy reads all input files into
	    memory, does the sorting and writes everything out.  The "multipass"
	    strategy reads the input files in three passes, one for  nodes,  one
	    for  ways, and one for relations.  After reading all objects of each
	    type, they are sorted and written out.  This is a  bit  slower  than
	    the "simple" strategy, but uses less memory.  The "multipass" strat-
	    egy doesn't work when reading from STDIN.  Default: "simple".

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 STD-
	    OUT  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.

INPUT OPTIONS
     -F, --input-format=FORMAT
	    The format of the input file(s).  Can be used to set the input  for-
	    mat  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  for-
	    mat  for  some  input files only.  See osmium-file-formats(5) or the
	    libosmium manual for details.

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  "os-
	    mium/" 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 mul-
	    tiple 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.

DIAGNOSTICS
     osmium sort 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.

MEMORY USAGE
     osmium sort keeps the contents of all the input files in main memory.  This
     will  take  roughly  10  times  as much memory as the files take on disk in
     .osm.bz2 or osm.pbf format.

EXAMPLES
     Sort in.osm.bz2 and write out to sorted.osm.pbf:

	    osmium sort -o sorted.osm.pbf in.osm.bz2

SEE ALSO
     * osmium(1), osmium-file-formats(5), osmium-output-headers(5)

     * Osmium website

COPYRIGHT
     Copyright (C) 2013-2026 Jochen Topf <jochen@topf.org>.

     License  GPLv3+:  GNU  GPL  version   3   or   later   <https://gnu.org/li-
     censes/gpl.html>.	This is free software: you are free to change and redis-
     tribute it.  There is NO WARRANTY, to the extent permitted by law.

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

AUTHORS
     Jochen Topf <jochen@topf.org>.

				     1.19.0			  OSMIUM-SORT(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=osmium-sort&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help