简体   繁体   English

使用getopts的脚本不会为变量赋值

[英]Script with getopts doesn't assign value to variable

The variable MAANDINT doesn't get a value assigned. 变量MAANDINT没有分配值。 Please help me to find a solution 请帮我找到解决方案

#!/bin/bash

if [ $# -eq 0 ]
then
echo Je moet een maand ingeven!
exit 1
elif [ $# -eq 1 ]
then
JAAR=$(date +'%Y')
else
JAAR=$2
fi

while getopts ":jan:feb:maa:apr:mei:jun:jul:aug:sep:okt:nov:dec:" MAAND;
do
case $MAAND in
jan)
MAANDINT=1
;;
feb)
MAANDINT=2
;;
maa)
MAANDINT=3
;;
apr)
MAANDINT=4
;;
mei)
MAANDINT=5
;;
jun)
MAANDINT=6
;;
jul)
MAANDINT=7
;;
aug)
MAANDINT=8
;;
sep)
MAANDINT=9
;;
okt)
MAANDINT=10
;;
nov)
MAANDINT=11
;;
dec)
MAANDINT=12
;;
*)
echo Deze maand bestaat niet!
exit 1
;;
esac
done
echo $MAANDINT

getopts does not support long options. getopts不支持长选项。 MAAND will never match any of those values. MAAND将永远不会匹配任何这些值。 Add echo "$MAAND" in the * case. *情况下添加echo "$MAAND" – Etan Reisner –伊坦·赖斯纳(Etan Reisner)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM