因为bash语言是linux原生自带的,所以我们的仿真入口脚本通常使用bash,在bash脚本中,经常会用到if else的分支,由于与C语言等其他语言用法不一致,所以在这里整理一下。
具体实例如下:
if [[ ${GSIM} =~ ^(rtl_sim|RTL_SIM)$ ]]; then
# XXX
elif [[ ${GSIM} =~ ^(pre_sim|PRE_SIM)$ ]]; then
# XXX
elif [[ ${GSIM} =~ ^(post_sim|POST_SIM)$ ]]; then
# XXX
else
exit 1;
fi
有几点要注意的是:
1、if的分支用到的关键字是elif;
2、if关键字后边要加一个空格;
3、if的条件用方括号括起来,而且括号与条件之间都要加空格;
4、if条件后边要加分号和then关键字。
另外在上述例子中,用到bash的匹配符 “=~”,其中 “^” 表示匹配开头,“$” 表示匹配结尾,中间的 “|” 表示逻辑或。
这里主要记录一下bash中的if else的语法,附代介绍了一下bash中的条件匹配。