Shell三剑客:正则表达式简介

前言

一、名称解释

正则表达式(regular expression,RE)是一种字符模式,用于在查找过程中匹配指定的字符。在大多数程序里,正则表达式都被置于两个正斜杠之间;例如/l[oO]ve/就是由正斜杠界定的正则表达式,它将匹配被查找的行中任何位置出现的相同模式。在正则表达式中,元字符是最重要的概念,

二、工具

被vim、sed、awk、grep调用

三、场景

mysql、oracle、php、python、apache、nginx...需要正则

五、示例

需求:匹配数组的脚本:用户输入创建账号的数量

语法:[[ ^[0-9]+$ ]]

演示:

cs 复制代码
[root@localhost ~]# vim reg.sh    #脚本编辑
#!/bin/bash
#read -p "请输入数字才退出:" num

while :
do

read -p "请输入数字才退出:" num

if [[ $num =~ ^[0-9]+$ ]]
        then
                echo "谢谢,再见"
                exit 99

        else
                echo "重新输入"

fi
done

[root@localhost ~]# bash reg.sh     #执行脚本
请输入数字才退出:^H
重新输入
请输入数字才退出:jdf
重新输入
请输入数字才退出:df
重新输入
请输入数字才退出:3
谢谢,再见
相关推荐
轻松Ai享生活9 小时前
5 节课深入学习Linux Cgroups
linux
christine-rr10 小时前
linux常用命令(4)——压缩命令
linux·服务器·redis
三坛海会大神55510 小时前
LVS与Keepalived详解(二)LVS负载均衡实现实操
linux·负载均衡·lvs
東雪蓮☆10 小时前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs
乌萨奇也要立志学C++10 小时前
【Linux】进程概念(二):进程查看与 fork 初探
linux·运维·服务器
獭.獭.12 小时前
Linux -- 信号【上】
linux·运维·服务器
hashiqimiya12 小时前
centos配置环境变量jdk
linux·运维·centos
hashiqimiya12 小时前
权限更改centos中系统文件无法创建文件夹,使用命令让普通用户具备操作文件夹
linux
逆小舟16 小时前
【Linux】人事档案——用户及组管理
linux·c++
青草地溪水旁16 小时前
pthread_mutex_lock函数深度解析
linux·多线程·pthread