linux系统之shell编程-正則表達式
shell编程正則表達式:
1:元字符 [ ] . * ?
+ ( ) | { } ^ $
2 : [a-z0-9] 表示匹配随意数字和字母的一个
3 : [^a-z] 匹配除了字母的随意一个
4 : ab+c +表示匹配一个或多个+号前面的字符
5 : ab*c *表示匹配没有或多个*号前面的字符
6 : ab?
c ?表示匹配一个?号前面的字符
7 : (ab){2}c 表示匹配两个ab字符的字符。
8 : (ab)*c (ab)+c (ab)?
c 同4,5,6的规则同样。仅仅是匹配全部括号中面的字符。
9:^ab 表示匹配以ab开头的字符, 而[^ab]表示匹配除了字符ab的
10: \<title\> 仅仅匹配title这个单词,以空格或换行作为分隔符
linux中的 fgrep grep egrep 命令 grep (global research regular expression and printing)
fgrep 命令不使用正則表達式,将全部字符当作普通字符匹配在查找的时候
grep 命令仅仅支持普通的正則表達式,对扩展的正则不支持
egrep 命令支持全部的扩展正則表達式。
grep 的几种常见使用方法:
1: grep -v 匹配不包括在正則表達式内的字符 grep -v '^ab' /etc/passwd 不以ab开头的字符
2: grep --color 将匹配的字符用颜色标记出来
3: grep -o 仅仅显示匹配的字符,在过滤之后。
4: grep -A2 'abc' /etc/passwd 显示匹配字符以及匹配字符行的上面两行
5: grep -B2 'abc' /etc/passwd 显示
匹配字符以及匹配字符行的以下两行
6: grep -C3 'abc' /etc/passwd
显示 匹配字符以及匹配字符行的以下和上面两行
7: grep -f /etc/shadow /etc/passwd 表示依据/etc/shadow文件里的内容匹配/etc/passwd中包括
/etc/shadow中的字符
8: grep -E 表示支持扩展正則表達式,等同于 egrep
9:
linux系统之shell编程-正則表達式的更多相关文章
- 鸟书shell 学习笔记(二) shell中正則表達式相关
通配符与正則表達式的差别 通配符是bash原生支持的语法,正則表達式是处理字符串的一种表示方式, 正則表達式须要支持的工具支持才干够 语系设置 : export LANG=C grep alias 设 ...
- shell文本过滤编程(一):grep和正則表達式
[版权声明:转载请保留出处:blog.csdn.net/gentleliu.Mail:shallnew at 163 dot com] Linux系统中有非常多文件,比方配置文件.日志文件.用户文件等 ...
- Linux正則表達式-反复出现的字符
星号(*)元字符表示它前面的正則表達式能够出现零次或多次.也就是说,假设它改动了单个字符.那么该字符能够在那里也能够不在那里,而且假设它在那里,那可能会不止出现一个.能够使用星号元字符匹配出如今引號中 ...
- 轻松学习之Linux教程六 正則表達式具体解释
本系列文章由@超人爱因斯坦出品.转载请注明出处. 作者:超人爱因斯坦 个人站点:http://www.hpw123.net 文章链接:http://hpw123.net/a/L ...
- shell脚本学习笔记 (正則表達式)
正則表達式一般有三个部分组成,他们各自是:字符类,数量限定符,位置限定符. 规定一些特殊语法表示字符类.数 量限定符和位置关系,然后用这些特殊语法和普通字符一起表示一个模式,这就是正則表達式(Regu ...
- grep 和 sed:linux经常使用工具 & 基本正則表達式
grep 见链接:http://www.cyberciti.biz/faq/grep-regular-expressions/ sed參考文章:http://www.thegeekstuff.com ...
- Linux正則表達式-定位元字符
有两个元字符用于指定字符串出如今行首或行末.脱字符(^)是指示開始的单字符正則表達式.美元符号($)是指示行结尾的单字符的正則表達式.这些通常称为"定位符",由于它们将匹配限定在特 ...
- js正則表達式语法
1. 正則表達式规则 1.1 普通字符 字母.数字.汉字.下划线.以及后边章节中没有特殊定义的标点符号,都是"普通字符".表达式中的普通字符,在匹配一个字符串的时候,匹配与之同样的 ...
- JAVA中正則表達式总结
昨天,我的朋友请教我正則表達式.我也好久没有写过正則表達式了,昨天刚好看了下如鹏网创始人杨中科老师关于正則表達式的解说.使我加深了正則表達式的印像.现我把他总结下: 很多语言,包含Perl.PHP.P ...
随机推荐
- 基础训练 Huffuman树
Huffuman树 /*解法一*/ #include<iostream> #include<queue> using namespace std; int main(){ pr ...
- python基础——9(迭代器、生成器)
一.迭代器 1.概念 器:包含了多个值的容器 迭代:循环反馈(一次从容器中取出一个值) 迭代器:从装有多个值的容器中一次取出一个值给外界 s = 'abcdef' ls = [1,2,3,4,5] 遍 ...
- 算法学习记录-排序——冒泡排序(Bubble Sort)
冒泡排序应该是最常用的排序方法,我接触的第一个排序算法就是冒泡,老师也经常那这个做例子. 冒泡排序是一种交换排序, 基本思想: 通过两两比较相邻的记录,若反序则交换,知道没有反序的记录为止. 例子: ...
- 关于Linux下使用expdp和impdp命令对Oracle数据库进行导入和导出操作
说明:本次导入和导出采用expdp和impdp命令进行操作,这2个命令均需要在服务器端进行操作 http://www.cnblogs.com/huacw/p/3888807.html 一. 从O ...
- js的setInterval和setTimeout的那些浅坑
setInterval和setTimeout的区别简单提一下 setInterval() :按照指定的周期(以毫秒计)来调用函数或计算表达式.方法会不停地调用函数,直到 clearInterval() ...
- Python基础之字符串,布尔值,整数,列表,元组,字典,集合
一.str字符串 1.capitalize字符串首字母大写 name = "json" v = name.capitalize() print(v) # 输出结果:Json 2.c ...
- Python算法-二叉树深度优先遍历
二叉树 组成: 1.根节点 BinaryTree:root 2.每一个节点,都有左子节点和右子节点(可以为空) TreeNode:value.left.right 二叉树的遍历: 遍历二叉树:深度 ...
- div的显示隐藏方法汇总
JQuery DIV 动态隐藏和显示的方法 1. 如果在载入是隐藏: <head> <script language="javascript"> funct ...
- NYOJ 1023 还是回文
还是回文 时间限制:2000 ms | 内存限制:65535 KB 难度:3 描述 判断回文串很简单,把字符串变成回文串也不难.现在我们增加点难度,给出一串字符(全部是小写字母),添加或删除一 ...
- 【C#】穿马甲的流程控制语句
导读:话说当年选择.顺序.循环语句风靡整个VB,今年发现,那几个东西又换了件衣服,跑到了C#里蹦跶.开始,真被这几个穿马甲的吓了一跳,没看出来这是老伙伴.突然有一天,瞥见了脱下新衣的孩子们.哈哈哈哈. ...