千家信息网

Linux系统中grep命令怎么用

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,这篇文章主要介绍了Linux系统中grep命令怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Linux系统中grep命令是一种强
千家信息网最后更新 2025年01月21日Linux系统中grep命令怎么用

这篇文章主要介绍了Linux系统中grep命令怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

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

例1 在文件中查找模式(单词)

在/etc/passwd文件中查找单词"linuxtechi"

root@Linux-world:~# grep linuxtechi /etc/passwdlinuxtechi:x:1000:1000:linuxtechi,,,:/home/linuxtechi:/bin/bashroot@Linux-world:~#

例2 在多个文件中查找模式

root@Linux-world:~# grep linuxtechi /etc/passwd /etc/shadow /etc/gshadow   /etc/passwd:linuxtechi:x:1000:1000:linuxtechi,,,:/home/linuxtechi:/bin/bash   /etc/shadow:linuxtechi:$6$DdgXjxlM$4flz4JRvefvKp0DG6re:16550:0:99999:7:::/etc/gshadow:adm:*::syslog,linuxtechi   /etc/gshadow:cdrom:*::linuxtechi   /etc/gshadow:sudo:*::linuxtechi   /etc/gshadow:dip:*::linuxtechi   /etc/gshadow:plugdev:*::linuxtechi   /etc/gshadow:lpadmin:!::linuxtechi   /etc/gshadow:linuxtechi:!::   /etc/gshadow:sambashare:!::linuxtechiroot@Linux-world:~#

例3 使用-L参数列出包含指定模式的文件的文件名

root@Linux-world:~# grep -l linuxtechi /etc/passwd /etc/shadow /etc/fstab /etc/mtab   /etc/passwd   /etc/shadowroot@Linux-world:~#

例4 使用-N参数,在文件中查找指定模式并显示匹配行的行号

root@Linux-world:~# grep -n linuxtechi /etc/passwd   39:linuxtechi:x:1000:1000:linuxtechi,,,:/home/linuxtechi:/bin/bashroot@Linux-world:~#

例5 使用-V参数输出不包含指定模式的行

输出/etc/passwd文件中所有不含单词"linuxtechi"的行

root@Linux-world:~# grep -v linuxtechi /etc/passwd

例6 使用 ^ 符号输出所有以某指定模式开头的行

Bash脚本将 ^ 符号视作特殊字符,用于指定一行或者一个单词的开始。例如输出/etc/passes文件中所有以"root"开头的行

root@Linux-world:~# grep ^root /etc/passwd   root:x:0:0:root:/root:/bin/bashroot@Linux-world:~#

例7 使用 $ 符号输出所有以指定模式结尾的行

输出/etc/passwd文件中所有以"bash"结尾的行

root@Linux-world:~# grepbash$ /etc/passwd   root:x:0:0:root:/root:/bin/bash   linuxtechi:x:1000:1000:linuxtechi,,,:/home/linuxtechi:/bin/bashroot@Linux-world:~#

Bash脚本将美元($)符号视作特殊字符,用于指定一行或者一个单词的结尾

例8 使用 -R 参数递归地查找特定模式

root@Linux-world:~# grep -r linuxtechi /etc/   /etc/subuid:linuxtechi:100000:65536   /etc/group:adm:x:4:syslog,linuxtechi   /etc/group:cdrom:x:24:linuxtechi   /etc/group:sudo:x:27:linuxtechi   /etc/group:dip:x:30:linuxtechi   /etc/group:plugdev:x:46:linuxtechi   /etc/group:lpadmin:x:115:linuxtechi   /etc/group:linuxtechi:x:1000:   /etc/group:sambashare:x:131:linuxtechi   /etc/passwd-:linuxtechi:x:1000:1000:linuxtechi,,,:/home/linuxtechi:/bin/bash   /etc/passwd:linuxtechi:x:1000:1000:linuxtechi,,,:/home/linuxtechi:/bin/bash............................................................................

上面的命令将会递归的在/etc目录中查找"linuxtechi"单词

例9 使用 Grep 查找文件中所有的空行

root@Linux-world:~# grep ^$ /etc/shadowroot@Linux-world:~#

由于/etc/shadow文件中没有空行,所以没有任何输出

例10 使用 -I 参数查找模式

grep命令的-i参数在查找时忽略字符的大小写。我们来看一个例子,在paswd文件中查找"LinuxTechi"单词

nextstep4it@localhost:~$ grep -i LinuxTechi /etc/passwd   linuxtechi:x:1001:1001::/home/linuxtechi:/bin/bashnextstep4it@localhost:~$

例11 使用 -E 参数查找多个模式

例如,我想在一条grep命令中查找‘linuxtechi’和‘root’单词,使用-e参数,我们可以查找多个模式

root@Linux-world:~# grep -e "linuxtechi" -e "root" /etc/passwd   root:x:0:0:root:/root:/bin/bash   linuxtechi:x:1000:1000:linuxtechi,,,:/home/linuxtechi:/bin/bashroot@Linux-world:~#

例12 使用 -F 用文件指定待查找的模式

首先,在当前目录中创建一个搜索模式文件"grep_pattern",我想文件中输入的如下内容

root@Linux-world:~# cat grep_pattern   ^linuxtechi   root   false$root@Linux-world:~#

现在,试试使用grep_pattern文件进行搜索

root@Linux-world:~# grep -f grep_pattern /etc/passwd

例13 使用 -C 参数计算模式匹配到的数量

继续上面例子,我们在grep命令中使用-c命令计算匹配指定模式的数量

root@Linux-world:~# grep -c -f grep_pattern /etc/passwd   22root@Linux-world:~#

例14 输出匹配指定模式行的前或者后面N行

a)使用-B参数输出匹配行的前4行

root@Linux-world:~# grep -B 4"games" /etc/passwd

b)使用-A参数输出匹配行的后4行

root@Linux-world:~# grep -A 4"games" /etc/passwd

c)使用-C参数输出匹配行的前后各4行

root@Linux-world:~# grep -C 4"games" /etc/passwd


感谢你能够认真阅读完这篇文章,希望小编分享的"Linux系统中grep命令怎么用"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!

文件 模式 参数 输出 命令 单词 符号 篇文章 搜索 系统 多个 字符 特殊 一行 例子 开头 数量 文本 正则 目录 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 利用家庭宽带搭建服务器项目 计算机网络技术所需要的配置 电子幸运大转盘软件开发 银行的软件开发基本做什么 三星手机版我的世界服务器进不去 网络安全启动仪式幼儿园 省医疗数据库 服务器运行监管场景 网络安全重保服务方案 密云区进口软件开发调整 计算机三级网络技术第一章 如何创建数据库跟踪 数据库备份文件怎么压缩的 显示数据库创建的目录位置 第一台服务器浪潮生产的 浪潮服务器通电设置 计算机软考中软件开发 乐平市软件开发培训公司 怎么管理国外服务器 路UK登陆的时候访问数据库错误 一般工厂要不要上网络安全检测 数据库安全性的主要技术和方法 网络安全技术对抗 软件开发专业本科向软件测试发展 肇庆网络安全产品 数据库某字段设置数字范围 sql遍历数据库 网络安全下一步工作打算 电子信息产业和嵌入式软件开发 centos设置数据库
0