OSMIUM-CHANGESET-FILTER(1)

NAME
osmium-changeset-filter - filter changesets from OSM changeset file

SYNOPSIS
osmium changeset-filter [OPTIONS] OSM-CHANGESET-FILE

DESCRIPTION
Copy the changesets matching all the given criteria to the output. Matching criteria are given through command line options.

This commands reads its input file 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.

FILTER OPTIONS

-a, --after=TIMESTAMP
    Only copy changesets closed after the given time. This will always include all open changesets.

-b, --before=TIMESTAMP
    Only copy changesets created before the given time.

-B, --bbox=LONG1,LAT1,LONG2,LAT2
    Only copy changesets with a bounding box overlapping the specified box. The coordinates LONG1,LAT1 are from one arbitrary corner, the coordinates LONG2,LAT2 are from the opposite corner.

-c, --with-changes
    Only copy changesets with changes.

-C, --without-changes
    Only copy changesets without changes.

-d, --with-discussion
    Only copy changesets with discussions, ie changesets with at least one comment.

-D, --without-discussion
    Only copy changesets without discussions, ie changesets without any comments.

--open
    Only copy open changesets.

--closed
    Only copy closed changesets.

-u, --user=USER
    Only copy changesets by the given user name.

-U, --uid=UID
    Only copy changesets by the given user ID.

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.

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.

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.

DIAGNOSTICS
osmium changeset-filter 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 changeset-filter does all its work on the fly and doesn’t keep much data in main memory.

EXAMPLES
To see all changesets by user “foo”:

        osmium changeset-filter -u foo -f debug changesets.osm.bz2

To create an OPL file containing only open changesets:

        osmium changeset-filter --open -o open-changesets.opl.bz2 changesets.osm.bz2

SEE ALSO

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

•   Osmium website (https://osmcode.org/osmium-tool/)

COPYRIGHT

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

License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>. This is free software: you are free to change and redistribute 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>.