#function myfunc
myfunc(){
echo $1
case $1 in
e)
a=5
;;
q)
a=10
;;
esac
}
myfunc
我需要以下方面的帮助:
$myfunc.sh e
echo $1
什么都没显示。case
也不起作用。我做错了什么?
答案1
myfunc
调用函数时,您忘记向其传递至少一个参数。因此,您的myfunc.sh
脚本应如下所示:
#!/bin/bash
#function myfunc
myfunc(){
echo $1
case $1 in
e) a=5 ;;
q) a=10 ;;
*) a='not e or q' ;;
esac
echo $a
}
myfunc $1 #in this case you can also use $@ or $*
更多关于: