;; after the previous case item?while getoptions f option
do
  case "${options}"
  in
  f) FTR="${ARG}"
    \?) exit
  esac
donewhile getoptions f option
do
  case "${options}"
  in
  f) FTR="${ARG}";;
    \?) exit;;
  esac
doneSyntax case needs ;; after the previous
case item. If not, syntax error will cause.
ShellCheck is a static analysis tool for shell scripts. This page is part of its documentation.