.TH "OSMIUM-SORT" "1" "1.10.0" "" "" .SH NAME .PP osmium\-sort \- sort OSM files .SH SYNOPSIS .PP \f[B]osmium sort\f[] [\f[I]OPTIONS\f[]] \f[I]OSM\-FILE\f[]... .SH DESCRIPTION .PP Merges the content of all input files given on the command line and sort the result. .PP Objects are sorted by type, ID, and version. IDs are sorted negative IDs first, the positive IDs, both ordered by their absolute values. So the sort order for types and IDs is: .PP node \-1, node \-2, ..., node 1, node 2, ..., way \-1, way \-2, ..., way 1, way 2, ..., relation \-1, relation \-2, ..., relation 1, relation 2, ... .PP If there are several objects of the same type and with the same ID they are ordered by ascending version. .PP This command works with normal OSM data files, history files, and change files. .PP 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 \f[I]multipass\f[] strategy is used.) .SH OPTIONS .TP .B \-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 "multi" strategy doesn\[aq]t work when reading from STDIN. Default: "simple". .RS .RE .SH COMMON OPTIONS .TP .B \-h, \-\-help Show usage help. .RS .RE .TP .B \-v, \-\-verbose Set verbose mode. The program will output information about what it is doing to STDERR. .RS .RE .TP .B \-\-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. .RS .RE .TP .B \-\-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. .RS .RE .SH INPUT OPTIONS .TP .B \-F, \-\-input\-format=FORMAT The format of the input file(s). Can be used to set the input format if it can\[aq]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 \f[B]osmium\-file\-formats\f[](5) or the libosmium manual for details. .RS .RE .SH OUTPUT OPTIONS .TP .B \-f, \-\-output\-format=FORMAT The format of the output file. Can be used to set the output file format if it can\[aq]t be autodetected from the output file name. See \f[B]osmium\-file\-formats\f[](5) or the libosmium manual for details. .RS .RE .TP .B \-\-fsync Call fsync after writing the output file to force flushing buffers to disk. .RS .RE .TP .B \-\-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 "\f[I]osmium/\f[]" and the version of osmium. .RS .RE .TP .B \-o, \-\-output=FILE Name of the output file. Default is \[aq]\-\[aq] (STDOUT). .RS .RE .TP .B \-O, \-\-overwrite Allow an existing output file to be overwritten. Normally \f[B]osmium\f[] will refuse to write over an existing file. .RS .RE .TP .B \-\-output\-header=OPTION=VALUE Add output header option. This command line option can be used multiple times for different OPTIONs. See the \f[I]libosmium manual\f[] for a list of available header options. .RS .RE .SH DIAGNOSTICS .PP \f[B]osmium sort\f[] exits with exit code .TP .B 0 if everything went alright, .RS .RE .TP .B 1 if there was an error processing the data, or .RS .RE .TP .B 2 if there was a problem with the command line arguments. .RS .RE .SH MEMORY USAGE .PP \f[B]osmium sort\f[] 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 \f[I]\&.osm.bz2\f[] or \f[I]osm.pbf\f[] format. .SH EXAMPLES .PP Sort \f[I]in.osm.bz2\f[] and write out to \f[I]sorted.osm.pbf\f[]: .IP .nf \f[C] osmium\ sort\ \-o\ sorted.osm.pbf\ in.osm.bz2 \f[] .fi .SH SEE ALSO .IP \[bu] 2 \f[B]osmium\f[](1), \f[B]osmium\-file\-formats\f[](5) .IP \[bu] 2 Osmium website (https://osmcode.org/osmium-tool/) .SH COPYRIGHT .PP Copyright (C) 2013\-2018 Jochen Topf . License GPLv3+: GNU GPL version 3 or later . This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. .SH CONTACT .PP If you have any questions or want to report a bug, please go to https://osmcode.org/contact.html .SH AUTHORS Jochen Topf .