【shell 正则】教程文章相关的互联网学习教程文章

shell下正则表达式与其工具grep【代码】【图】

一.grep相关知识1.grep grep (global search regular expression(RE) and print out the line,全面搜索正则表达式并把行打印出来)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行打印出来。2.grep工作原理 grep有两种模式:Basic和Extend模式。 在Basic模式下,命令直接grep ,其中的?、+、{}、|、()都被解释为普通字符,如果要使用其的特殊意义,就必须对其用转义字符进行转义。 在Extend模式...

shell 正则【代码】

正则的主要作用 处理文本内容基础正则^ 定位起始头的[root@RainGod ~]# grep ‘^y‘ /etc/passwd yt03:x:1002:1002::/home/yt03:/bin/bash yt01:x:1003:1003::/home/yt01:/bin/bash yt02:x:1004:1004::/home/yt02:/bin/bash $ 定位结束尾部信息[root@RainGod ~]# grep ‘n$‘ /etc/passwd bin:x:1:1:bin:/bin:/sbin/nologin daemon:x:2:2:daemon:/sbin:/sbin/nologin adm:x:3:4:adm:/var/adm:/sbin/nologin ^$ 空行[root@RainGo...

shell正则表达式【图】

正则表达式和通配符的本质区别不需要思考的判断方法:在三剑客awk,sed,grep,egrep都是正则,其他都是通配符 2.区别通配符和正则表达式最简单的方法:  (1)文件目录名===>通配符 (2)文件内容(字符串,文本【文件】内容)===>正则表达式 注意:在匹配模式中一定要加上引号符号描述实例备注.匹配任意单个字符(必须存在)l..e可以表示love、like、leee等,但不可以表示labcde、le、le...

shell学习3.shell函数,正则表达式【代码】

shell函数 shell中允许将一组命令集合或语句形成一段可用代码,这些代码块称为shell函数。给这段代码起个名字称为函数名,后续可以直接调用该段代码。 格式func() { #指定函数名command #函数体}实例1:#!/bin/bash func() { echo "This is a function." } func# bash test.sh This is a function.Shell 函数很简单,函数名后跟双括号,再跟双大括号。通过函数名直接调用,不加小括号。 示例 2:函数返回值#!/bin/bash func()...

第三章 shell学习之正则表达式

正则表达式\<the\>:精确匹配the,不包括包含the的单词[^b-d]:不包含b~da\{2\}:a出现2次a\{2,3\}:a出现2~3次a\{2,\}:a至少出现2次[:upper:]:大写字母(用的时候外面加一层[]表示匹配字符集合)[:lower:]:小写字母[:digit:]:数字[:alnum:]:大小写字母和数字[:space:]:表示空格或tab键[:alpha:]:大小写字母通配注意通配和正则表达式不同,虽然有共同的符号ls -l *.sh匹配出以.sh结尾的文件,而*在正则表达式中表示0个或多个...

shell 正则表达式一【图】

正则表达式用于处理文本,精通运用正则表达式可以有效的解决工作的效率 正则表达式有基础正则表达式和扩展正则表达式区别grep支持基础的正则表达式,grep -E (egrep)支持扩展正则表达式 1、脱字符号(^)、美元符号($)脱字符号和美元符号实质上匹配的是一个位置(即定位),分别锚定一行的行首(^)和一行的行尾($)在这里详细说明一下理解正则表达式是习惯:^hel^锁定一行的开始,接下来是字符h,紧接着是字符e,最后是字符l...

Linux shell 命令和正则表达式

今天在Fedora20系统上编译VPP项目时遇到了一个问题,在最终编译并且使用rpmbuild生成的rpm安装包不正确,我们需要对生成rpm包的spec文件做一些小的修改。 首先我们来看看VPP自带的生成rpm包的spec描述文件,该文件为${VPP_TOPDIR}/build-root/rpm/vpp.spec, 我们可以打开看看该文件的内容: 其中在%install 段里面有如下的命令 1 # 2 # libraries 3 # 4 mkdir -p -m755 %{buildroot}%{_libdir} 5 for file in $(find %{_vpp_instal...

Shell正则应用【代码】

正则表达式 regular expression, RE 是一种字符模式,用于在查找过程中匹配指定的字符。在大多数程序里,正则表达式都被置于两个正斜杠之间;例如/l[oO]ve/就是由正斜杠界定的正则表达式,它将匹配被查找的行中任何位置出现的相同模式。在正则表达式中,元字符是最重要的概念正则表达式的作用Linux正则表达式经常在 grep,sed,awk 等中出现,要想学好这些命令首先就要掌握正则表达式大量的字符串文件需要进行配置,而且是非交互式的过...

shell 常用正则表达式

“^\d+$” //非负整数(正整数 + 0) “^[0-9]*[1-9][0-9]*$” //正整数 “^((-\d+)|(0+))$” //非正整数(负整数 + 0) “^-[0-9]*[1-9][0-9]*$” //负整数 “^-?\d+$” //整数 “^\d+(\.\d+)?$” //非负浮点数(正浮点数 + 0) “^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$” //正浮点数 “^((-\d+(\.\d+)?)|(0+(\.0+)?))$” //非正浮点数(负浮点数 + 0) “^(-(([0-9]+\.[0-9]*[1...

Shell正则表达式 列表【图】

文章来源:http://man.linuxde.net/docs/shell_regex.html原文:https://www.cnblogs.com/pzblog/p/9087406.html

Shell笔记:正则表达式

通配符是用于匹配符合条件的文件名(完全匹配),但是正则表达式是用来匹配文件中符合条件的字符串(包含匹配)。基础的正则表达式*:前一个字符匹配0次或任意多次。.:匹配除了换行符之外的任意一个字符。^:匹配行首。$:匹配行尾。[]:匹配方括号中指定的任意一个字符(只匹配一个字符),里面可以使用-表示范围性字符,如0-9表示0到9的数字,a-z表示小写字母a到z的字符。[^]:匹配除了方括号中指定的任意一个字符,如[^0-9]表示...

shell正则表达

shell正则表达 .*和.?的比较:比如说匹配输入串A: 101000000000100使用 1.*1 将会匹配到1010000000001,匹配方法:先匹配至输入串A的最后, 然后向前匹配,直到可以匹配到1,称之为贪婪匹配。使用 1.?1 将会匹配到101, 匹配方法:匹配下一个1之前的所有字符, 称之为非贪婪匹配。 元字符描述\将下一个字符标记符、或一个向后引用、或一个八进制转义符。例如,“\\n”匹配\n。“\n”匹配换行符。序列“\\”匹配“\”而“\(”则匹配...

shell 脚本-正则表达式【代码】【图】

字符类(Character Class):如上例的x和y,它们在模式中表示一个字符,但是取值范围是 一类字符中的任意一个。数量限定符(Quantifier):邮件地址的每一部分可以有一个或多个x字符,IP地址的每一部 分可以有1-3个y字符位置限定符(Anchor):描述各种字符类以及普通字符之间的位置关系,例如邮件地址分三部分,用普通字符@和.隔 开,IP地址分四部分,用.隔开,每一部分都可以用字符类和数量限定符描述。为了表示位置关系,需要位置限定符的概念,将...

linux基础正则表达式、shell基础、文件查找和压缩

linux基础正则表达式、shell基础、文件查找和压缩1.shell编程显示电脑的基本信息,初级基础脚本。只适合6.7版本的。 COLOR="\033[1;36m"COLOREND="\033[0m"echo -e "CPU type is $COLOR lscpu |grep 'Model name'|tr -s ' '|cut -d: -f2$COLOREND"echo -e "Disk space is $COLOR lsblk |grep 'disk' |tr -s ' '|cut -d' ' -f4|head -n 1 $COLOREND"echo -e "Memory size is $COLOR free -h |grep 'Mem'|tr -s ' '|cut -d' ' -f2 $C...

Powershell-使用正则表达式查找文件

支持所有PS版本Get-ChildItem 不支持文件高级筛选。它只能使用简单的通配符,但不能使用正则表达式。围绕这个问题,我们可以使用-match命令来筛选。下面这个例子将获得所有windows目录下包含至少连续有两个数字的文件同时文件名长度不超过8个字符:Get-ChildItem -Path $env:windir -Recurse -ErrorAction SilentlyContinue |Where-Object { $_.BaseName -match \d{2} -and $_.Name.Length -le 8 }注意文件的属性”BaseName”是没有...