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

前言

一、名称解释

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

二、工具

被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
谢谢,再见
相关推荐
第404号工位17 分钟前
40块钱二手瘦客户端,如何跑满家庭物联网中枢?(拒绝Docker爆盘实录)
linux·架构·node.js
骑着蜗牛撵大象3272 小时前
Linux 进程间通信之管道:从 pipe() 的内核语义到 FIFO 落地排错
android·java·linux·系统编程·fifo·管道·进程间通信
..Dauntless..2 小时前
【Linux】一切皆文件和缓冲区
linux·运维·服务器
QMCY_jason2 小时前
x86 ubuntu2204 无gui 安装 openeuler 2203 aarch64版本
linux·运维·服务器
重生之小比特2 小时前
【Linux系统】12 进程程序替换 自定义Shell 命令行解释器
linux·运维·服务器
あ-3 小时前
CubeSandBox配置CubeMaster CPU 超分
linux·运维·服务器
Escalating_xu3 小时前
【Linux 网络编程】TCP Socket 编程(上):从 listen、accept 到完整回显通信
linux·网络·tcp/ip
老秦包你会3 小时前
Linux第十课---------Linux信号
linux
北风toto4 小时前
Linux 服务器如何判断 CPU 是否支持 x86-64-v2 指令集
java·linux·服务器
程序员-Benothing4 小时前
Linux抓包分析教程:tcpdump、Wireshark、tshark实战
linux·运维·服务器