【发布时间】:2016-12-03 02:07:52
【问题描述】:
我正在尝试确保我的 shell 脚本的输入遵循 Name_Major_Minor.extension 格式
其中名称是任意数量的数字/字符/“-”后跟“_”
Major 是后跟“_”的任意位数
Minor 是后跟“.”的任意位数
扩展名是任意数量的字符,后跟文件名的结尾。
我相当肯定我的正则表达式只是稍微搞砸了。我当前运行的任何文件都评估为“是”,但如果我添加“[A-Z]$”而不是“*$”,它总是评估为“否”。正如你可能知道的那样,正则表达式把我搞糊涂了..
if echo $1 | egrep -q [A-Z0-9-]+_[0-9]+_[0-9]+\.*$
then
echo "yes"
else
echo "nope"
exit
fi
编辑:意识到我错过了“次要”的模式。加了之后还是不行。
【问题讨论】: