diff options
| author | typebrook <typebrook@gmail.com> | 2019-11-14 23:07:48 +0800 |
|---|---|---|
| committer | typebrook <typebrook@gmail.com> | 2019-11-14 23:07:48 +0800 |
| commit | 3f848adb850aa8be6ab231f8818f81fd8f213160 (patch) | |
| tree | efa1a560d764ee6eb17985a7b159104f387021e6 /utils | |
| parent | 4d6eb0d2cbfaf766dc70703f24efb73e15c003f9 (diff) | |
update
Diffstat (limited to 'utils')
| -rw-r--r-- | utils/osm | 30 |
1 files changed, 26 insertions, 4 deletions
| @@ -174,7 +174,9 @@ osm.osm.update() { | |||
| 174 | awk -F"\"" ' | 174 | awk -F"\"" ' |
| 175 | BEGIN{OFS="\""} | 175 | BEGIN{OFS="\""} |
| 176 | {if(NR==1) print $1,$2,$3,$4+1,">"; else print $0} | 176 | {if(NR==1) print $1,$2,$3,$4+1,">"; else print $0} |
| 177 | ' >> $1.updated | 177 | ' |\ |
| 178 | sed -r '1 i <osm version="0.6" generator="bash script"> | ||
| 179 | $ a </osm>' >> $1.updated | ||
| 178 | done | 180 | done |
| 179 | } | 181 | } |
| 180 | # create a new changeset | 182 | # create a new changeset |
| @@ -213,9 +215,21 @@ osm.api.changeset.add() { | |||
| 213 | } | 215 | } |
| 214 | osm.api.changeset.upload() { | 216 | osm.api.changeset.upload() { |
| 215 | cat $2 |\ | 217 | cat $2 |\ |
| 216 | sed -r "/<(node|way|relation)/ s/>/ changeset=\"$1\">/ | 218 | sed -nr "1 i <modify> |
| 217 | /<(node|way|relation)/,/<\/(node|way|relation)/ | 219 | /<(node|way|relation)/ s/>/ changeset=\"$1\">/ |
| 218 | " | 220 | /<(node|way|relation).*version=\"1\"/,/<\/(node|way|relation)/ {!p;H} |
| 221 | $ a <\/modify> | ||
| 222 | $ a <create> | ||
| 223 | $ {g;p} #|\ | ||
| 224 | $ a <\/create>" |\ | ||
| 225 | sed -r "1 { | ||
| 226 | N; /<\/modify>/ b delete_empty_body | ||
| 227 | } | ||
| 228 | /<create>/ { | ||
| 229 | N; /<\/create>/ b delete_empty_body | ||
| 230 | } | ||
| 231 | :delete_empty_body { d } | ||
| 232 | " | ||
| 219 | #curl -X POST -u $OSM_USER_PASSWD -T - $OSM_API/changeset/$id/upload | 233 | #curl -X POST -u $OSM_USER_PASSWD -T - $OSM_API/changeset/$id/upload |
| 220 | } | 234 | } |
| 221 | # update changeset with a new comment | 235 | # update changeset with a new comment |
| @@ -262,3 +276,11 @@ osm.pbf.update() { | |||
| 262 | ((NEW_SEQ++)) | 276 | ((NEW_SEQ++)) |
| 263 | done | 277 | done |
| 264 | } | 278 | } |
| 279 | osm.osm.remove() { | ||
| 280 | while read -r line | ||
| 281 | do | ||
| 282 | array=( $(echo $line) ) | ||
| 283 | cat $1 |\ | ||
| 284 | sed -i "/<$array[1] id=\"$array[2]\"/,/<\/$array[1]>/ d" | ||
| 285 | done | ||
| 286 | } | ||