发布时间:2014-09-05 17:09:58作者:知识屋
正则表达式 快速调治grep
正则表达式:由一堆元字符组成,将这些元字符按一定的规则组合起来用来过滤匹配不同的内容。(简单的说正则表达式就是一个由元字符组成的过滤网)
正则表达式的分类
1、基本正则表达式:即标准正则表达式,支持基本的元字符。
基本正则表达式所支持的元字符极其含义如图所示:
2、扩展正则表达式:支持比基本正则表达式更多的元字符,但是扩展正则表达式对有些基本本正则表达式所支持的元字符并不支持。
扩展正则表达式所支持的元字符如图所示:
通过对比我们会发现在基本正则表达式中支持的元字符,在扩展正则表达式中并不是都支持。
grep
grep 全面执行正则表达式并将匹配的内容显示出来。换而言之,grep是用来执行由元字符组成的过滤网的,并显示出匹配过滤网的信息。
grep执行正则表达式的格式为:grep "keyword" file
grep是用来执行基本正则表达式的命令,其不能够识别扩展正则表达式中的元字符。
grep -E = egrep 是用来执行拓展正则表达式的,因扩展正则表达式中并不包含所有的基本正则表达式,所以egrep也不能执行基本正则表达式。
下面通过下图练习中的几道题我们来看一看grep和正则表达式结合的效果
答案
1、grep --color "^[sS]" /pro/meminfo (--color是把匹配的内容以红色显示出来,便于核对执行效果,我们为了方便也可以使用alias grep='grep --color'命令来设置命令的别名让命令grep与grep --color有相同的效果)
2、grep "nologin$" /etc/passwd
3、grep "^#[[:space:]]/(1,/).*" /etc/inittab
4、grep ":[0-9]:" /etc/inittab
5、grep "[[:space:]]/(1,/).*" /boot/grub/grub.conf
6、grep "^/([0-9]/).*/1$" /etc/
7、ifconfig | grep --color "inet addr" | grep -v '127.0.0.1' | cut -d: -f2 | cut -d" " -f1
8、grep --color "[0-9]/{1,3/}/.[0-9]/{1,3/}/.[0-9]/{1,3/}/." /etc/sysconfig/network-spcripts/ifcfg-eth0 使用扩展正则表达式的答案如下:
grep -E "([0-9]/{1,3/}/.){3}[0-9]/{1,3}" /etc/sysconfig/network-spcripts/ifcfg-eth0
本文出自 “redhat” 博客
linux一键安装web环境全攻略 在linux系统中怎么一键安装web环境方法
Linux网络基本网络配置方法介绍 如何配置Linux系统的网络方法
Linux下DNS服务器搭建详解 Linux下搭建DNS服务器和配置文件
对Linux进行详细的性能监控的方法 Linux 系统性能监控命令详解
linux系统root密码忘了怎么办 linux忘记root密码后找回密码的方法
Linux基本命令有哪些 Linux系统常用操作命令有哪些
Linux必学的网络操作命令 linux网络操作相关命令汇总
linux系统从入侵到提权的详细过程 linux入侵提权服务器方法技巧
linux系统怎么用命令切换用户登录 Linux切换用户的命令是什么
在linux中添加普通新用户登录 如何在Linux中添加一个新的用户
2012-07-10
CentOS 6.3安装(详细图解教程)
Linux怎么查看网卡驱动?Linux下查看网卡的驱动程序
centos修改主机名命令
Ubuntu或UbuntuKyKin14.04Unity桌面风格与Gnome桌面风格的切换
FEDORA 17中设置TIGERVNC远程访问
StartOS 5.0相关介绍,新型的Linux系统!
解决vSphere Client登录linux版vCenter失败
LINUX最新提权 Exploits Linux Kernel <= 2.6.37
nginx在网站中的7层转发功能