diff --git a/migrate.sh b/migrate.sh index eccc09c..98e6792 100755 --- a/migrate.sh +++ b/migrate.sh @@ -29,7 +29,13 @@ create_repo() { : ${GITEA_SERVER_PUSH_URL:=} ARGS=() +pos_arg_flag=0 while [[ $# -gt 0 ]]; do + if [ "${pos_arg_flag}" -eq "1" ]; then + ARGS+=("$1") + shift 1 + continue + fi case "$1" in --url | -u) GITEA_SERVER_URL="$2" @@ -52,12 +58,11 @@ while [[ $# -gt 0 ]]; do shift 2 ;; --) + pos_arg_flag=1 shift 1 - break ;; - -*) - echo "unknown argument: $1" 1>&2 - exit 1 + --*=*) + set -- "$(cat - <<<"$1" | cut -d '=' -f1)" "$(cat - <<<"$1" | cut -d '=' -f2-)" "${@:3}" ;; *) ARGS+=("$1")