我们知道,正则表达式可以大大的提高我们的工作效率。

在了解正则表达式之前,我们需要了解,通配符的概念。

在linux中,我们在使用ls这个命令的时候经常会使用下面这种用法

[fuwh@localhost stu]$ ll lin1*
-rw-r--r--. 1 fuwh fuwh 2865 7月 26 10:45 lin1
-rw-r--r--. 1 root root 2865 7月 26 10:58 lin11
[fuwh@localhost stu]$

可以注意到,我们这里使用了*来代替各种字符的意思。

但是这并不是正则表达式。

在linux中,有很多的命令,如果这些命令支持正则表达式,那我们就可以在命令里面使用正则表达式。比如:grep、vi等

但是,如果是不支持正则表达式的话,那就只能使用bash自带的通配符功能了。

通配符:

* :代表0个到无穷个任意字符

?:代表一个任意字符

[]:代表括号内的任意字符(一个,且一定有一个)

[ - ]:代表减号前后的字符之间的所有字符

[^]:^是反向选择的意思,表示一定有一个不是括号中的字符

了解完通配符之后,我们就可以来看看有那些正则表达式可以用了。

^word:表示以word开头

word$:表示以word结尾

.:代表一定有一个任意的字符

\:转义字符

*:表示前面的那个字符重复0到无穷次

[list]:表示括号内的任意一个

[n1-n2]:表示n1到n2之间的字符

[^list]:表示不是list里面的字符

\{n,m\}:表示前面的字符重复n到m次

\{n\}:表示前面的字符重复n次

\{n,\}:表示前面的字符重复n次以上

+:表示前面的字符重复一次或一次以上

?:表示前面的字符出现0次或一次

|:表示或的意思

():表示群组的意思

()+:表示出现多次的群组

例:

[fuwh@localhost stu]$ cat test.txt
fuwh第一海洋 fu的名字good
we use google to search
not gogle [fuwh@localhost stu]$ grep '^fu' test.txt
fuwh第一海洋
fu的名字good
[fuwh@localhost stu]$ grep 'd$' test.txt
fu的名字good
[fuwh@localhost stu]$ grep go\{2\} test.txt
[fuwh@localhost stu]$ grep 'go\{2\}' test.txt
fu的名字good
we use google to search
[fuwh@localhost stu]$

Centos常用命令之:正则表达式的更多相关文章

  1. centos常用命令

    应用程序->附件->终端 一:使用CentOS常用命令查看cpumore /proc/cpuinfo | grep "model name"   grep " ...

  2. CentOS 常用命令大全

    下面,就给大家介绍这些CentOS常用命令. 一:使用CentOS常用命令查看cpu more /proc/cpuinfo | grep "model name" grep &qu ...

  3. CentOS常用命令大全

    一:使用CentOS常用命令查看cpumore /proc/cpuinfo | grep "model name" grep "model name" /pro ...

  4. CentOS常用命令备忘

    1. 查看进程 ps -a 杀掉进程 kill PID 2. 添加计划任务crontab -e 例如:30 21 * * * service httpd restart 每天21:30重启apache ...

  5. 第3章 CentOS常用命令

    一.CentOS常用命令 1.1 文件和目录 # cd /home                        进入 '/home' 目录 # cd ..                       ...

  6. CentOS 常用命令及快捷键整理

    常用命令: 文件和目录: # cd /home                        进入 '/home' 目录 # cd ..                                ...

  7. CentOS常用命令、快照、克隆大揭秘

    不多说,直接上干货! cat是查看文件内容, cp –cp是连目录及件文件都拷贝 cp是拷贝文件 a.txt里的内容是,   abc   def   ghi cat a.txt |grep –v gh ...

  8. Centos 常用命令[持续积累中...]

    CentOS常用到的查看系统命令 uname -a cat /etc/issue /sbin/ifconfig # 查看内核/操作系统/CPU信息 head -n 1 /etc/issue # 查看操 ...

  9. CentOS 常用命令大全(2)

    系统 # uname -a               # 查看内核/操作系统/CPU信息 # head -n 1 /etc/issue   # 查看操作系统版本 # cat /proc/cpuinf ...

随机推荐

  1. css3图片模糊过滤特效

    体验效果:点击这里查看效果 代码如下:<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " ...

  2. CSS的盒子模型有哪些,区别是什么

    1)盒模型: 内容(content).填充(padding).边界(margin). 边框(border)   2)有两种, IE 盒子模型.标准 W3C 盒子模型:IE的content部分包含了 b ...

  3. choose the max from numbers, use scanf and if else (v1:21.9.2017,v2:23.9.2017)

    #include<stdio.h> int main(){ int a,b,c,max; printf("请输入一个数值: "); scanf("%d&quo ...

  4. 个人技术博客(alpha)

    APP的权限校验不同于web网页端,web一般使用session记录用户的状态信息,而app则使用token令牌来记录用户信息.有这样一个场景,系统的数据量达到千万级,需要几台服务器部署,当一个用户在 ...

  5. REST or RPC?

    1 概念 1.1 RPC RPC(Remote Procedure Call)-远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.RPC协议假定某些传输协议的存 ...

  6. JAVA_SE基础——34.static修饰成员变量

    需求:描述一下学校的学生.  特点:都是中国人.... 测试代码1: class Student{ String name; String country = "中国"; //国籍 ...

  7. Django REST framework+Vue 打造生鲜超市(一)

    一.项目介绍 1.1.掌握的技术 Vue + Django Rest Framework 前后端分离技术 彻底玩转restful api 开发流程 Django Rest Framework 的功能实 ...

  8. 论文泛读·Adversarial Learning for Neural Dialogue Generation

    原文翻译 导读 这篇文章的主要工作在于应用了对抗训练(adversarial training)的思路来解决开放式对话生成(open-domain dialogue generation)这样一个无监 ...

  9. Python之函数的进阶(带参数的装饰器)

    函数篇--装饰器二 带参数的装饰器 def outer(flag): def timer(func): def inner(*args,**kwargs): if flag: print('''执行函 ...

  10. linux压缩相关命令

    http://blog.csdn.net/mmllkkjj/article/details/6768294