Option not recognized
问题 I'm trying to use a case statement to determine if I have a legal command. It looks something like this: function commandTest { case $1 in –score) echo "something";; *) echo "unknown";; esac } Now if I use the function like this, it doesn't work. case doesn't recognize the string correctly although it is identical. $ commandTest "-score" unknown What am I doing wrong here? 回答1: As posted, your sample code has an en-dash (Unicode U+2013) in front of score , instead of a minus sign (ASCII 0x2D)