linux命令学习03-grep
实例1、查找某个进程
#ps -ef | grep ssh
root 1771 1 0 12:07 ? 00:00:00 /usr/sbin/sshd
root 2362 1771 0 16:34 ? 00:00:00 sshd: root@pts/0
root 2409 2364 0 16:36 pts/0 00:00:00 grep ssh
实例2、查找多个进程
#ps -ef|grep -E "ssh|crond"
root 1771 1 0 12:07 ? 00:00:00 /usr/sbin/sshd
root 1946 1 0 12:08 ? 00:00:00 crond
root 2362 1771 0 16:34 ? 00:00:00 sshd: root@pts/0
root 2424 2364 0 16:40 pts/0 00:00:00 grep -E crond|ssh
grep -E=egrep,表示采用extended regular expression(扩展正则表达式)语法来解读;
grep -e,表示后跟正则表达式;
实例3、把一个文件的内容当关键字进行检索其他文件
# cat >test.txt<<eof
> aaaa
> bbbb
> ccccc
> ddddd
> eeeee
> eof
# cat test.txt
aaaa
bbbb
ccccc
ddddd
eeeee
# cat >test1.txt<<eof
> ddd
> bbb
> eof
# cat test1.txt
ddd
bbb
# cat test.txt|grep -nf test1.txt
2:bbbb
4:ddddd
-n,表示显示行号,-f表示以文件为关键字
实例4、查找不包含关键字的行并显示行号
# cat test.txt|grep -vnE "cc|aa"
2:bbbb
4:ddddd
5:eeeee
# cat test.txt|egrep -vn "cc|aa"
2:bbbb
4:ddddd
5:eeeee
实例4、查找以e开头的行和不以e开头的行
# cat test.txt|grep ^e
eeeee
# cat test.txt|grep -n ^e
5:eeeee
# cat test.txt|grep -n ^[^e]
1:aaaa
2:bbbb
3:ccccc
4:ddddd
^表示以某关键字开头,[^]表示匹配一个不在指定范围内的字符,^[^e]表示非e开头的行
实例5、查找以dd结尾的行和不以c-m结尾的行
# cat test.txt|grep -n dd$
4:ddddd
7:bcdddd
8:xxdddd
# cat test.txt|grep -n [^c-m]$
1:aaaa
2:bbbb
6:abcdxx
11:lllnnn
实例6、查找文件中的ip地址
# cat test.txt|grep "[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}.[0-9]\{1,3\}"
192.168.1.2
192.160.23.156
10.0.31.254
1.25.235.12
注:grep默认需要对{进行转义,必须添加\;
# cat test.txt|egrep "([0-9]{1,3}.){3}.[0-9]"
192.168.1.2
192.160.23.156
10.0.31.254
1.25.235.12
注:egrep不需要且不能对{} ()进行转义,添加转义\则查不出内容;
linux命令学习03-grep的更多相关文章
- Linux命令学习-grep
1.作用Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局 ...
- 别出心裁的Linux命令学习法
别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...
- Linux命令学习
Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...
- 《Linux命令学习手册》系列分享专栏
<Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...
- 20155229付钰涵-虚拟机安装及LINUX命令学习
安装Ubuntu遇到的问题 问题一: 新建虚拟电脑的版本只有32-bit,与老师所给教程中的64-bit不符.为此我上百度搜寻了答案. 第一种方法: 控制面板--程序与功能--启动或关闭windows ...
- 安装虚拟机&Linux命令学习
安装虚拟机&Linux命令学习 基于VirtualBox虚拟机安装Ubuntu 1.下载安装VirtualBox 根据自己电脑(32位操作系统)的实际情况,我在网上找了相应的VirtualBo ...
- Linux命令学习笔记目录
Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...
- (转)Linux命令学习总结:dos2unix - unix2dos
Linux命令学习总结:dos2unix - unix2dos 命令简介: 原文:http://www.cnblogs.com/kerrycode/p/5077969.html dos2unix是将W ...
- # Linux 命令学习记录
Linux 命令学习记录 取指定文件夹下的任意一个文件,并用vim打开 vi $(ls -l|grep "^-"|head -n 1|awk '{print $9}') 统计给定文 ...
- 常见Linux命令学习
Linux命令学习 命令分类: 文件处理命令 权限管理命令 文件搜索命令 帮助命令 用户管理命令 压缩解压命令 网络命令 关机重启命令 1.文件处理命令 命令格式:命令 [-选项] [参数] 例:ls ...
随机推荐
- GDAL 生成shp文件
附件:http://pan.baidu.com/s/1i3GPwrV(C#版GDAL接口.dll) 示例程序: http://pan.baidu.com/s/1jpIKQ (程序是在vs2008 x ...
- golang illegal base64 data at input byte
//one reason is whitespace ciphertext = strings.Replace(ciphertext, " ", "", -1) ...
- Android 从AndroidManifest获取meta-data
语法如下: <meta-data android:name="string" android:resource="resource specification&qu ...
- tp可用的超强第三方图表类库-JpGraph
日常开发中经常需要做图表,比如线状图.饼状图.柱状图等等,用PHP作图时需要使用复杂抽象的画图函数,或者借助一些网上下载的花柱形图.饼形图的类来实现,没有一个统一的chart类来实现图表的快速开发,非 ...
- 在Azure Cloud Service中部署Java Web App(1)
Microsoft Azure是一个开放的,灵活的云平台,除了对自家的.Net平台有良好的支持外,对于各种开源的软件,语言,工具,框架都有着良好的支持,比如Java,Php,Python等等,你可以使 ...
- Nginx 配置指令的执行顺序(四)
ngx_lua 模块提供了配置指令 access_by_lua,用于在 access 请求处理阶段插入用户 Lua 代码.这条指令运行于 access 阶段的末尾,因此总是在 allow 和 deny ...
- Nginx 变量漫谈(二)
关于 Nginx 变量的另一个常见误区是认为变量容器的生命期,是与 location 配置块绑定的.其实不然.我们来看一个涉及“内部跳转”的例子: server { listen ...
- Thinking in C++: 第1章 为什么C++会成功(改进了C的缺点,可复用C的知识与库,执行效率相当)
本文内容摘抄自C++经典书籍:<Thinking in C++> 操作概念:OOP程序像什么 我们已经知道,用C 语言编写的过程程序就是一些数据定义和函数调用.要理解这种程序的含义,程 ...
- Unix/Linux环境C编程入门教程(27) 内存那些事儿
calloc() free() getpagesize() malloc() mmap() munmap()函数介绍 calloc(配置内存空间) 相关函数 malloc,free,realloc,b ...
- sed简单实例练习
sedfile内容如下: Steve Blenheim:238-923-7366:95 Latham Lane, Easton, PA 83755:11/12/56:20300 Betty Boop: ...