热烈祝贺
这是一个简单的日期正则验证实例,有需要了解的同学可参考。
shell中的if语句需要做一个正则判断,查了一下语法记录之。
|
1
2
3
4
5
6
|
DATEPATTERN="^[0-9]{4}-[0-9]{1,2}-[0-9]{1,2}$"if [[ "$STARTDATE" =~ $DATEPATTERN ]] && [[ $ENDDATE =~ $DATEPATTERN ]]; then :elseecho "date format is invalid!"exit;fi |
常用的正则表达式
|
1
2
|
if [[ "$file" =~ 'start' ]]或if [[ "$file" =~ "start" ]] |
例子:
|
1
2
3
4
5
6
7
8
|
#!/usr/bin/kshfile="10start11.s"if [[ "$file" =~ "start" ]]thenecho "success"elseecho "failed"fi |
只有bash才支持[[
ksh在test中应该不支持正则,用awk grep sed等工具实现吧
|
1
2
3
4
5
6
|
flag=`echo $file |awk '/start/'`if [ "$flag" = "" ];thenecho "success"elseecho "failed"fi |
Bourne Shell 的 if 语句和大部分编程语言一样 – 检测条件是否真实,如果条件为真,shell 会执行这个 if 语句指定的代码块,如果条件为假,shell 就会跳过 if 代码块,继续执行之后的代码。

if 语句的语法:
|
1
2
3
4
5
6
7
|
if[判断条件]thencommand1command2……..last_commandfi |
| 投稿作者 | 作者网站 |
|---|---|
| 微信捐赠 | 支付宝捐赠 |
|---|---|
![]() |
![]() |


热烈祝贺
imcn成功拥抱人工智能。
Zorin OS 很久没有使用,开箱即用…
elementaryOS 5.0中文版安…
写个桌面启动器创建工具吧
评论功能已经关闭!