switch条件,熟悉其它语言程序的switch命令的话就可以忽视此文了。
switch条件,格式为:
switch ?options? string {pattern body ?pattern body ...?}
其中的花括号可以不要,但是在写脚本的时候建议都用花括号,可以避免很多问题。其中options选项为匹配的风格,string为匹配的字符串,pattern为匹配条件,如果能够匹配就执行body里面的命令,不匹配则不执行。如果最后一个default子句时,没有匹配到就执行default子句中的body,default子句职能有一个且必须是最后一个pattren。如果不是最后一个pattern使用了default,那么解释器就认为只是匹配字符串default。
options中有一个"--"选项,在写脚本的时候最好在string前面都有这个选项,这种习惯会让脚本更加健全。因为这个选项表示了options的结束,而且在string以字符"-"开头时十分有用。
使用严格匹配风格匹配,默认方式:
% set var test
test
% switch -exac
test
% switch -exac