diff options
Diffstat (limited to 'alias')
-rw-r--r-- | alias | 22 |
1 files changed, 16 insertions, 6 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 |