实例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的更多相关文章

  1. Linux命令学习-grep

    1.作用Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expression Print,表示全局 ...

  2. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  3. Linux命令学习

    Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...

  4. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  5. 20155229付钰涵-虚拟机安装及LINUX命令学习

    安装Ubuntu遇到的问题 问题一: 新建虚拟电脑的版本只有32-bit,与老师所给教程中的64-bit不符.为此我上百度搜寻了答案. 第一种方法: 控制面板--程序与功能--启动或关闭windows ...

  6. 安装虚拟机&Linux命令学习

    安装虚拟机&Linux命令学习 基于VirtualBox虚拟机安装Ubuntu 1.下载安装VirtualBox 根据自己电脑(32位操作系统)的实际情况,我在网上找了相应的VirtualBo ...

  7. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

  8. (转)Linux命令学习总结:dos2unix - unix2dos

    Linux命令学习总结:dos2unix - unix2dos 命令简介: 原文:http://www.cnblogs.com/kerrycode/p/5077969.html dos2unix是将W ...

  9. # Linux 命令学习记录

    Linux 命令学习记录 取指定文件夹下的任意一个文件,并用vim打开 vi $(ls -l|grep "^-"|head -n 1|awk '{print $9}') 统计给定文 ...

  10. 常见Linux命令学习

    Linux命令学习 命令分类: 文件处理命令 权限管理命令 文件搜索命令 帮助命令 用户管理命令 压缩解压命令 网络命令 关机重启命令 1.文件处理命令 命令格式:命令 [-选项] [参数] 例:ls ...

随机推荐

  1. 合理的使用size_t可以提高程序的可移植性和代码的可读性,让你的程序更高效。

    最近研读STL源码时,发现里面有很多ptrdiff_t类型的数据,这与size_t的作用类似.以下是一篇关于size_t等平台无关类型的作用,写得很清楚.特将其记录下来. http://blog.cs ...

  2. linux下C++对线程的封装

    之前一直是使用C语言,前段时间转做C++.无论使用什么语言,多线程编程都是不可或缺的.最近项目中又用到了线程,现在将线程的封装做出总结: 1.线程类中应该包含线程ID.线程的状态以及线程基本操作等. ...

  3. poj 3744 矩阵 高斯消元

    着实被批评了一下,自己的数论确实太烂了. 题意:一条路上,有n个炸弹,给出每个炸弹的位置,一次走一步的概率是p,走两步的概率是1-p.求安全走完的概率. 定义dp[i] = dp[i-1]*p + d ...

  4. Apache+tomcat的整合

    http://blog.csdn.net/stefyue/article/details/6918542 为什么要做这个整合呢?当然,首先想到是就是Apache和Tomcat的区别.正因为有区别,有各 ...

  5. android sdk manager无法更新

    问题描述:       Android SDK Manager 无法下载更新,或者更新速度超慢,或者待安装包列表不显示.   解决方法:     第一,我们先修改下hosts文件.该文件的位置在系统盘 ...

  6. CentOS6.5下Mysql数据库的安装与配置

    一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱 ...

  7. python基础教程第6章——抽象

    1.函数的定义,使用def(或“函数定义”)语句: def hello(name): return ‘Hello.'+name+'!' def fibs(num): result=[0,1] for ...

  8. Holding Bin-Laden Captive!(hdoj1085)代码并未完全看懂

    We all know that Bin-Laden is a notorious terrorist, and he has disappeared for a long time. But rec ...

  9. poj 1083 Moving Tables_dp

    题意:给你n个凳子,接着告诉你一个凳子从a房间到b房间,运输时间为10分钟,走廊很窄能通过一张凳子,当然不堵塞的话能同时扮凳子,问最小花费多少时间 因为数据很小就直接用数组统计了,a,b如果是奇数的话 ...

  10. Aix5~6小机运维

    1,0516-787 extendlv: Maximum allocation for logical volume hd3        is 512 smitt chlv改max logical ...