工作中常要控制工程师上传patch的文件名必须为某种格式,比如“Syso4901_DV2_patch_LMSqb13517”(大致含义是:平台代号_主软件版本_补丁_该需求在DDTS里的记录号码)。其实在庞大的项目组下,客户服务部门很难保证每一个人传上来的文件都以这样命名规则来
我找到了“正则表达式匹配操作符=~”,它可以和测试表达式[[]]联合使用。关键代码如下:
复制内容到剪贴板
代码:
if [[ "$UserInput" =~ "sysol[0-9][0-9][0-9][0-9]_DV[1-9]_patch_LMSqb[0-9]" ]]
then
FileName=$UserImput
else
echo "File naming error..."
echo "Please name your file like sysol4901_DV2_patch_LMSqb13245"
echo
exit 1
fi