diff options
author | typebrook <typebrook@gmail.com> | 2019-11-07 00:48:14 +0800 |
---|---|---|
committer | typebrook <typebrook@gmail.com> | 2019-11-07 00:48:14 +0800 |
commit | efb9c0795a4d1630c7809795f445011ecd379c91 (patch) | |
tree | 51c0e6adc0047925f0316484efb63cb7b33eb598 | |
parent | 93c22ce0aa1bb1ed16123d6517c536c44368f0e8 (diff) |
update
-rw-r--r-- | alias | 22 | ||||
-rwxr-xr-x | scripts/changeset | 8 |
2 files changed, 22 insertions, 8 deletions
@@ -1,5 +1,5 @@ | |||
1 | SETTING_DIR="$HOME/git/settings" | 1 | SETTING_DIR="$HOME/git/settings" |
2 | OSM_USER_PASSWD=$(cat $HOME/git/settings/token/osm) | 2 | OSM_USER_PASSWD=$(cat $HOME/git/settings/tokens/osm) |
3 | 3 | ||
4 | # settings | 4 | # settings |
5 | alias al='vim ~/.bash_aliases && source ~/.bash_aliases' | 5 | alias al='vim ~/.bash_aliases && source ~/.bash_aliases' |
@@ -212,20 +212,25 @@ typebrook='git@github.com:typebrook' | |||
212 | 212 | ||
213 | 213 | ||
214 | # osm | 214 | # osm |
215 | osm='https://api.openstreetmap.org/api/0.6/' | 215 | osm='https://api.openstreetmap.org/api/0.6' |
216 | osm.get() { | 216 | osm.get() { |
217 | curl -X GET $osm/$1/$2 | 217 | curl -X GET $osm/$1/$2 |
218 | } | 218 | } |
219 | osm.query() { | 219 | osm.query() { |
220 | osmium tags-filter $1 $2 --output-format=osm --omit-referenced | 220 | osmium tags-filter $1 $2 --output-format=osm --omit-referenced |
221 | } | 221 | } |
222 | osm.extract() { | ||
223 | echo "<osm version=\"0.6\">" | ||
224 | sed -nr "/^ *<$1 id=\"$2\".*/,/^ *<\/$1>/p" - | ||
225 | echo "</osm>" | ||
226 | } | ||
222 | osm.update() { | 227 | osm.update() { |
223 | # remove original tag&value | 228 | # remove original tag&value |
224 | sed "/<tag k=\"$1\"/d" - | \ | 229 | sed "/<tag k=\"$1\"/d" - | \ |
225 | # insert new tag&value | 230 | # insert new tag&value |
226 | sed -r "/<(node|way|relation)/a \ \ \ \ <tag k=\"$1\" v=\"$2\"\/>" | 231 | sed -r "/<(node|way|relation)/a \ \ \ \ <tag k=\"$1\" v=\"$2\"\/>" |
227 | } | 232 | } |
228 | osm.changeset.update() { | 233 | osm.changeset.add() { |
229 | element=$(cat -) | 234 | element=$(cat -) |
230 | header=$(echo $element | grep -E "<(node|way|relation)\s") | 235 | header=$(echo $element | grep -E "<(node|way|relation)\s") |
231 | ele_type=$(echo $header | sed -r 's/.*<(node|way|relation).*$/\1/') | 236 | ele_type=$(echo $header | sed -r 's/.*<(node|way|relation).*$/\1/') |
@@ -233,10 +238,14 @@ osm.changeset.update() { | |||
233 | 238 | ||
234 | echo $element | \ | 239 | echo $element | \ |
235 | sed -r "s/^( *<(node|way|relation).*version[^ ]+ )(.*)$/\1changeset=\"$1\">/" | \ | 240 | sed -r "s/^( *<(node|way|relation).*version[^ ]+ )(.*)$/\1changeset=\"$1\">/" | \ |
236 | curl -X PUT -u $OSM_USER_PASSWD -i -T - https://api.openstreetmap.org/api/0.6/$ele_type/$id | 241 | curl -X PUT -u $OSM_USER_PASSWD -i -T - $osm/$ele_type/$id |
242 | } | ||
243 | osm.changeset.update() { | ||
244 | echo "<osm><changeset><tag k=\"comment\" v=\"$2\"/></changeset></osm>" | \ | ||
245 | curl -X PUT -u $OSM_USER_PASSWD -i -T - $osm/changeset/$1 | ||
237 | } | 246 | } |
238 | osm.changeset.close() { | 247 | osm.changeset.close() { |
239 | curl -X PUT -u $OSM_USER_PASSWD -i https://api.openstreetmap.org/api/0.6/changeset/$1/close | 248 | curl -X PUT -u $OSM_USER_PASSWD -i $osm/changeset/$1/close |
240 | } | 249 | } |
241 | osm.pbf.update() { | 250 | osm.pbf.update() { |
242 | osmium fileinfo $1 | \ | 251 | osmium fileinfo $1 | \ |
@@ -244,7 +253,8 @@ osm.pbf.update() { | |||
244 | cut -d'=' -f2 | \ | 253 | cut -d'=' -f2 | \ |
245 | sed 's/$/+1/' | bc | \ | 254 | sed 's/$/+1/' | bc | \ |
246 | sed -r 's/(.{1})(.{3})/00\1\/\2/' | \ | 255 | sed -r 's/(.{1})(.{3})/00\1\/\2/' | \ |
247 | xargs -I {} curl -O http://download.geofabrik.de/asia/taiwan-updates/000/'{}'.osc.gz | 256 | xargs -I {} curl -o diff.osc.gz http://download.geofabrik.de/asia/taiwan-updates/000/'{}'.osc.gz && \ |
257 | osmium apply-changes $1 diff.osc.gz --output output.osm.pbf --output-header=osmosis_replication_sequence_number=2422 --overwrite | ||
248 | } | 258 | } |
249 | 259 | ||
250 | # misc | 260 | # misc |
diff --git a/scripts/changeset b/scripts/changeset index d3dee3d..6138d7e 100755 --- a/scripts/changeset +++ b/scripts/changeset | |||
@@ -1,6 +1,7 @@ | |||
1 | #! /bin/bash | 1 | #! /bin/bash |
2 | 2 | ||
3 | OSM_USER_PASSWD=$(cat ~/git/settings/token/osm) | 3 | OSM_USER_PASSWD=$(cat ~/git/settings/tokens/osm) |
4 | |||
4 | #server=https://master.apis.dev.openstreetmap.org | 5 | #server=https://master.apis.dev.openstreetmap.org |
5 | server=https://api.openstreetmap.org | 6 | server=https://api.openstreetmap.org |
6 | comment="change is_in format" | 7 | comment="change is_in format" |
@@ -26,5 +27,8 @@ info="<osm> | |||
26 | " | 27 | " |
27 | 28 | ||
28 | echo $info |\ | 29 | echo $info |\ |
29 | curl -u $OSM_USER_PASSWD -i --upload-file - $server/api/0.6/changeset/create | 30 | curl -u $OSM_USER_PASSWD -i --upload-file - $server/api/0.6/changeset/create |\ |
31 | tee /dev/tty |\ | ||
32 | tail -1 |\ | ||
33 | xsel -ib | ||
30 | 34 | ||