Argument parsing for fetch_fio.

This commit is contained in:
Dominik Pantůček 2023-04-16 16:27:46 +02:00
parent d9fbe00579
commit 64bf42e4ee

View file

@ -28,6 +28,74 @@
# REST API endpoint
APIURI=https://www.fio.cz/ib_api/rest
# Configuration defaults - none
CONFIG_FILE=/etc/hackerbase
CFG_BANK_DIR=
CFG_APIKEYS_FILE=
ARG_BANK_DIR=
ARG_APIKEYS_FILE=
# Argument parsing
while ! [ -z "$1" ] ; do
case "$1" in
-apikey)
ARG_APIKEYS_FILE="$2"
shift
shift
;;
-bankdir)
ARG_BANK_DIR="$2"
shift
shift
;;
-config)
CONFIG_FILE="$2"
shift
shift
;;
*)
echo "Usage: $0 [-config file] [-apikey file] [-bankdir dir]"
exit 1
;;
esac
done
# Configuration parsing
cat "$CONFIG_FILE" \
| sed 's/#.*//' \
| while read line ; do
name=${line%% *}
value=${line#* }
case "$name" in
apikeys-file)
CFG_APIKEYS_FILE="$value"
;;
bank-dir)
CFG_BANK_DIR="$value"
;;
esac
done
# Configuration merging
if [ -z "$ARG_BANK_DIR" ] ; then
BANK_DIR="$CFG_BANK_DIR"
else
BANK_DIR="$ARG_BANK_DIR"
fi
if [ -z "$ARG_APIKEYS_FILE" ] ; then
APIKEYS_FILE="$CFG_APIKEYS_FILE"
else
APIKEYS_FILE="$ARG_APIKEYS_FILE"
fi
echo CONFIG_FILE "$CONFIG_FILE"
echo CFG_BANK_DIR "$CFG_BANK_DIR"
echo CFG_APIKEYS_FILE "$CFG_APIKEYS_FILE"
echo ARG_BANK_DIR "$ARG_BANK_DIR"
echo ARG_APIKEYS_FILE "$ARG_APIKEYS_FILE"
echo BANK_DIR "$BANK_DIR"
echo APIKEYS_FILE "$APIKEYS_FILE"
exit 0
#
# Very simple "logging" function (stdout should be redirected to log anyway)
log() {