OSMIUM-CHANGESET-FILTER(1)
β¨ OSMIUM-CHANGESET-FILTER β¨
okay bestie, gather round, because this is the osmium-changeset-filter manual page and it's literally here to filter changesets out of an OSM changeset file π she's from the osmium family of tools, and she's about to become your new obsession.
πΈ SYNOPSIS πΈ
osmium changeset-filter [OPTIONS] OSM-CHANGESET-FILE
π DESCRIPTION π
So what she does is: she copies the changesets that match all of the criteria you gave her, and those matches go straight to the output. And how do you give her criteria? Through command line options, obviously. π
The way this command works is she reads her input file exactly once and writes her output file in one go, which means she can be streamed β iykyk β meaning she can read from STDIN and write to STDOUT. no cap. β¨
π FILTER OPTIONS π
-a,--after=TIMESTAMPβ only copy changesets that were closed after the given time. heads up bestie: this will always include all the open changesets too, no exceptions.-b,--before=TIMESTAMPβ only copy changesets that were created before the given time.-B,--bbox=LONG1,LAT1,LONG2,LAT2β only copy changesets whose bounding box overlaps the box you specify.LONG1,LAT1is one arbitrary corner, andLONG2,LAT2is the opposite corner. opposite corners, slay.-c,--with-changesβ only copy changesets that have changes.-C,--without-changesβ only copy changesets that have no changes.-d,--with-discussionβ only copy changesets with discussions, meaning changesets with at least one comment.-D,--without-discussionβ only copy changesets without discussions, meaning changesets with zero comments.--openβ only copy open changesets.--closedβ only copy closed changesets.-u,--user=USERβ only copy changesets made by the given user name.-U,--uid=UIDβ only copy changesets made by the given user ID.
π COMMON OPTIONS π
-h,--helpβ show usage help. your safety net fr fr.-v,--verboseβ set verbose mode. she'll tell you what she's doing by outputting info toSTDERR.--progressβ show a progress bar. usually a progress bar only shows up ifSTDOUTandSTDERRare detected to be a TTY, but with this option it's always shown. > one thing though: a progress bar will never be shown when reading fromSTDINor a pipe.--no-progressβ do not show a progress bar. usually a progress bar is displayed ifSTDOUTandSTDERRare detected to be a TTY, but with this option it's suppressed. > same deal: a progress bar will never be shown when reading fromSTDINor a pipe.
π¦ INPUT OPTIONS π¦
-F,--input-format=FORMATβ the format of the input file(s). use this to set the input format when it can't be autodetected from the file name(s). important: this sets the format for all input files, there's literally no way to set the format for just some input files only. seeosmium-file-formats(5)or the libosmium manual for the deets.
β OUTPUT OPTIONS β
-f,--output-format=FORMATβ the format of the output file. use this to set the output file format when it can't be autodetected from the output file name. seeosmium-file-formats(5)or the libosmium manual for the deets.--fsyncβ callfsyncafter writing the output file to force flushing buffers to disk. very responsible of her π--generator=NAMEβ the name and version of the program generating the output file. it gets added to the header of the output file. default is"osmium/"plus the version of osmium.-o,--output=FILEβ name of the output file. default is-(that'sSTDOUT).-O,--overwriteβ allow an existing output file to be overwritten. normally osmium will straight up refuse to write over an existing file, so this is your permission slip.--output-header=OPTION=VALUEβ add an output header option. you can use this command line option multiple times for different OPTIONs. check theosmium-output-headers(5)man page for the list of available header options. and for some commands you can use the special format"OPTION!"(that's an exclamation mark after the OPTION, with no value set) to set the value to the same as in the input file. cute.
π DIAGNOSTICS π
osmium changeset-filter exits with exit code:
0β if everything went alright β¨1β if there was an error processing the data, or2β 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. lowkey the most efficient queen. π
π EXAMPLES π
wanna see all changesets by user "foo"? say less:
osmium changeset-filter -u foo -f debug changesets.osm.bz2
and 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
πΈ COPYRIGHT πΈ
Copyright (C) 2013-2026 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>.
and that's the whole page bestie, version 1.19.1 of the OSMIUM-CHANGESET-FILTER(1) manual, go forth and filter your changesets, you absolute icon π
β¨π
π¦ where this page comes from
- fedora 44: osmium-tool 1.19.1-1.fc44 Β· GPL-3.0-only
- nixos 26.05: osmium-tool 1.19.1
- nixpkgs unstable: osmium-tool 1.19.1
- ubuntu stonking: osmium-tool 1.19.1-1 Β· GPL-3.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms