68 lines
1.1 KiB
Bash
68 lines
1.1 KiB
Bash
#!/bin/bash
|
|
|
|
dflag=
|
|
vflag=
|
|
cflag=
|
|
|
|
if (( $# < 1 ))
|
|
then
|
|
exit 0
|
|
fi
|
|
|
|
OPTARG=""
|
|
URL=$1
|
|
|
|
for arg
|
|
do
|
|
delim=""
|
|
case "$arg" in
|
|
#translate --gnu-long-options to -g (short options)
|
|
--description) args="${args}-d ";;
|
|
--version) args="${args}-v ";;
|
|
--capabilities) args="${args}-c ";;
|
|
#pass through anything else
|
|
*) if [ "${arg:0:1}" == "-" ] || delim="\""
|
|
then
|
|
args="${args}${delim}${arg}${delim} "
|
|
else
|
|
OPTARG=${arg}
|
|
fi
|
|
esac
|
|
done
|
|
|
|
#Reset the positional parameters to the short options
|
|
eval set -- $args
|
|
|
|
while getopts "dvc" option
|
|
do
|
|
case $option in
|
|
d) dflag=1;;
|
|
v) vflag=1;;
|
|
c) cflag=1;;
|
|
\?) printf "unknown option: -%s\n" $OPTARG
|
|
printf "Usage: %s: [--description] [--version] [--capabilities] \n" $(basename $0)
|
|
exit 2
|
|
;;
|
|
esac >&2
|
|
done
|
|
|
|
if [ "$dflag" ]
|
|
then
|
|
printf "XMLTV URL grabber\n"
|
|
exit 0
|
|
fi
|
|
if [ "$vflag" ]
|
|
then
|
|
printf "0.1\n"
|
|
exit 0
|
|
fi
|
|
if [ "$cflag" ]
|
|
then
|
|
printf "baseline\n"
|
|
exit 0
|
|
fi
|
|
|
|
curl -s "$URL"
|
|
|
|
exit 0
|