#!/bin/sh set -e -u SCRIPTNAME=termux-location show_usage () { echo "usage: $SCRIPTNAME [-p provider] [-r request]" echo "Get the device location." echo " -p provider location provider [gps/network/passive] (default: gps)" echo " -r request kind of request to make [once/last/updates] (default: once)" exit 0 } validate_provider () { PROVIDER=$1 case "$PROVIDER" in gps) ;; network) ;; passive) ;; *) echo "$SCRIPTNAME: Unsupported provider: '$PROVIDER'"; exit 1;; esac } validate_request () { REQUEST=$1 case "$REQUEST" in once) ;; last) ;; updates) ;; *) echo "$SCRIPTNAME: Unsupported request: '$REQUEST'"; exit 1;; esac } PARAMS="" while getopts :hr:p: option do case "$option" in h) show_usage;; r) validate_request $OPTARG; PARAMS="$PARAMS --es request $OPTARG";; p) validate_provider $OPTARG; PARAMS="$PARAMS --es provider $OPTARG";; ?) echo "$SCRIPTNAME: illegal option -$OPTARG"; exit 1; esac done shift $(($OPTIND-1)) if [ $# != 0 ]; then echo "$SCRIPTNAME: too many arguments"; exit 1; fi @TERMUX_API@ Location $PARAMS