Linux文件处理工具之(grep)

简介

grep是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。

grep基本用法

  • 格式

        grep [options]

  • 主要参数

[options]主要参数:
-c:只输出匹配行的计数。
-I:不区分大 小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及 行号。
-s:不显示不存在或无匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
\: 忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$: 匹配正则表达式的结束行。
\<:从匹配正则表达 式的行开始。
\>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求 。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求 。
。:所有的单个字符。
* :有字符,长度可以为0。

  • grep命令使用练习(正则表达

1、显示/proc/meminfo文件中以大小s开头的行;(要求:使用两种方式)

[[email protected] ~]#  grep  ‘^[Ss]‘ /proc/meminfo

[[email protected] ~]# grep  -i  ‘^s‘ /proc/meminfo

2、显示三个用户root、mage、wang的UID和默认shell

[[email protected] ~]# cat /etc/passwd|egrep "^(root|mage|wang)\>" | cut -d : -f1,3,7

3、找出/etc/rc.d/init.d/functions文件中行首为某单词(包括下划线)后面跟一个小括号的行[[email protected] ~]# egrep "[_[:alpha:]]+\(\)" /etc/rc.d/init.d/functions

4、使用egrep取出/etc/rc.d/init.d/functions中其基名

[[email protected] ~]# echo "/etc/rc.d/init.d/functions" | egrep -o "[^/]+/?$"

5、使用egrep取出上面路径的目录名

[[email protected] ~]# echo "/etc/rc.d/init.d/functions/" | egrep -o "/.*[^/]" | egrep -o "/.*/"

6、显示ifconfig命令结果中所有IPv4地址

[[email protected] ~]# ifconfig | egrep -o "\<(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\>"

时间: 2024-10-22 21:16:41

Linux文件处理工具之(grep)的相关文章

文件处理工具、grep、正则表达式:

Linux 文件处理工具.grep.正则表达式: 抽取文本的工具    显示文件内容        less    一页一页查看文件标准输出输出        cat            -E  显示行结束符¥            -n  对显示的每一行进行编号            -A  显示所有控制符            -b  非空行编号            -s  压缩连续的空行 形成一行                文件截取        head.tail    按列抽取

Linux文件同步工具-rsync

Linux文件同步工具-rsync 安装包 yum install -y rsync rsync常用选项 -a:归档模式,表示递归方式传输文件,并保持所有属性:通-rlptgoD:-r:同步目录时要加上,类似cp时加R:-v:同步时显示一些信息,让我们知道同步国创:-l:保留软链接:-L:同步软链接时会把源文件给同步:-p:保持文件权限属性:-o:保持文件的属主:-g:保持文件的属组:-D:保持设备文件信息:-t:保持文件的时间属性:--delte:删除DEST中SRC没有的文件:--exclu

Linux文件查找工具之find “大宝剑”

一.文件查找工具常用软件 locate: locate命令其实是find -name的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库/var/lib/locatedb,这个数据库中含有本地所有文件信息.Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件.为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库. find:     find命令用来在指定目录下查找文件,通过遍历指定的

Linux文本处理工具之grep

文本处理三剑客之GREP 文本过滤工具:glob 用于实现bash中的文件名通配 通配符: *:任意长度的任意字符 ?:任意单个字符 [ ]:明确指明匹配范围内的单个字符 [abc]:abc中的任意一个 注:要匹配通配符本身,需要使用%转义 常用的字符集合表示法: [:alpha:]:任意字母 [:alnum:]:任意数字和字母 [:blank:]:任意空白字符 [:cntrl:]:任意控制字符 [:digit:]:任意数字 [:lower:]:任意小写字母 [:upper:]:任意大写字母 [

Linux文件搜索工具--find、locate

文件查找 在文件系统上查找符合条件的文件: 文件查找: locate, find 非实时查找(数据库查找): locate 实时查找: find 1. 非实时查找(数据库查找): locate 查询系统上预建的文件索引数据库  (基于此数据库搜索) 数据库:  /var/lib/mlocate/mlocate.db 依赖于事先构建的索引 索引的构建是在系统较为空闲时自动进行(周期性任务), 管理员手动更新数据库 :  updatedb (新建立的文件,需要更新数据库以后才能搜索到,所以适合查找比

linux文件查找工具 -- find

简述: linux中find命令是一种强大的实时查找工具,它通过用户给出的路径,在该路径下的文件系统中进行文件查找.因此在遍历一个较大的文件系统时会比较花费时间,而且find命令占用资源也是比较大的,所以它的工作特点是,查找的速度略慢,但是可以实现精确查找和实时查找.由于用户权限的问题,可能只搜索用户具备读取和执行权限的目录.由于find命令能力很强大所以它的选项也有很多. find命令用法: find命令格式: find [选项] [查找起始路径] [查找条件] [处理动作] find [-H

Linux文本处理工具之grep、egrep和fgrep

一.基本概念 正在表达式:正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串",这个"规则字符串"用来表达对字符串的一种过滤逻辑. grep(global search regular expression(RE) and print out the line):文本搜索工具,根据用户指定的文本模式对目标文件进行逐行搜索,显示能够被模式所匹配到的行(可以看成一个文本过滤器) egrep:使用扩展正则表达

Linux文件查找工具之find(详解)

find详解 一.find命令是什么? 实时查找工具,遍历指定目录中的所有文件完成查找. 二.find的工作特性: 实时查找 精确查找.支持众多查找标准 查找速度略慢 三.find的用法: find [OPTIONS][查找路径][查找条件][处理动作] (1)查找路径:指定具体的搜索目标的起始路径:默认为当前目录: (2)查找条件:指定的查找标准,可根据文件名.大小.类型.从属关系.权限等标准进行. 根据文件名查找: -name 'FILENAME':对文件名进行精确匹配: 支持支持glob风

window与linux文件传输工具

[一般用于SecureCRT ssh中使用] 法一:直接用yum安装lrzsz(推荐) yum install lrzsz -y 注意:rhel安装完系统后 直接可使用 rz sz 法二:源文件编译方法 针对centos x.x 版 lrzsz安装配置 mkdir -p /usr/src/tools cd /home/ryan/tools wget http://down1.chinaunix.net/distfiles/lrzsz-0.12.20.tar.gz tar zxvf lrzsz-0