Thursday, June 18, 2020

bash: case statement

#!/usr/bin/env bash

usage () {
    echo "usage message..."
}

options=$(getopt -o ug --long createuser:,creategroup: -- "$@")
[ $? -eq 0 ] || {
    usage
    exit 1
}

eval set -- "$options"
while true; do
    case "$1" in
    -g | --creategroup)
        shift
        OPTION="$1"
        ;;
    -u | --createuser)
        shift
        OPTION="$1"
        ;;
    --)
        shift
        break
        ;;
    esac
    shift
done

if [ -n "$OPTION" ]; then
    echo "Option is $OPTION"
else
    usage
    exit 1
fi

exit 0

No comments:

Post a Comment