首页 > 系统相关 >linux中的三剑客之一:grep

linux中的三剑客之一:grep

时间:2024-01-23 09:03:29浏览次数:33  
标签:显示 匹配 text file linux 字符串 grep 三剑客

一、介绍:

grep:是一种Unix/Linux命令,它可以在文本文件中搜索指定的字符串,并显示匹配的行。它可以使用正则表达式来搜索文本,并可以搜索多个文件。

二、命令:

参数    说明
-b    在输出的每一行显示包含匹配字符串的行在文件中的字节偏移量
-c(count)    仅显示找到的行数
-i(ignore)    显示找到的行,比较时不区分大小写
-h    在查找多个文件时,指示grep不要将文件名加入到输出之前
-l    显示首次匹配串所在的文件名并用换行符将其隔开。
-n(line-number)    显示找到的行,显示行号(文件首行行号为1)
-o(only-matching)    只显示匹配的内容
-A    如果匹配成功,则将匹配行及其后n行一起打印出来
-B    如果匹配成功,则将匹配行及其前n行一起打印出来
-C    如果匹配成功,则将匹配行及其前后n行一起打印出来
-E    等于egrep,扩展
--color    高亮颜色显示匹配到的字符串
-v(invert,反向)    显示没有匹配字符串的行
-x(line-regexp)    只显示整行严格匹配的行

例子1:

grep 'text file' Readme.txt   # 在文件Readme.txt中搜索字符串'text file'

例子2:

grep 'text file' *   # 在所有文件中搜索字符串'text file'

例子3:

grep 'text file' *.java   # 在所有的.java文件中搜索字符串'text file'-

使用特殊符号进行字符串的匹配:

匹配模式    说明
grep h 文件名    查找文件里有字符h的行
grep ^q 文件名    显示匹配以q开始的行
grep ^[ ^q ] 文件名    显示不匹配以q开头的行
grep ^[0-9] 文件名    显示匹配以数字开头的行
grep q$ 文件名    显示匹配以q结束的行
grep ^$    显示空白行
grep -r h ./*    如果要明确搜索当前目录中的子目录有h的行
grep -d skip h ./*    忽略当前目录下的子目录下的普通文件

例子1:

grep ^SELINUX /etc/selinux/config    # 查找以SELINUX开头的行数据

例子2:

grep ^$ passwd    # 显示要一个文件中空行

例子3:

grep ^[^$] passwd   # 显示要一个文件中空行 

 

标签:显示,匹配,text,file,linux,字符串,grep,三剑客
From: https://www.cnblogs.com/shaoyishi/p/17981529

相关文章

  • 使用Docker安装各种靶场(Linux系统)
    搭建pikachu搜索关于pikachu的镜像dockersearchpikachu选择start最多的镜像,这里选择area39/pikachu下载pikachu镜像dockerpullarea39/pikachu遇到拉取慢的情况下可以使用docker的国内镜像加速,创建或修改/etc/docker/daemon.json,内容如下:如果没有,创建文档sudotouc......
  • 【linux-centos】更新yum源
    大家都知道Centos8于2021年年底停止了服务,大家再在使用yum源安装时候,出现下面错误“错误:Failedtodownloadmetadataforrepo‘AppStream’:Cannotprepareinternalmirrorlist:NoURLsinmirrorlist” sed-i's/mirrorlist/#mirrorlist/g'/etc/yum.repos.d/CentOS-*......
  • linux 开启ntp
    先确定有没有装ntp服务rpm-qantp如果没有安装,则需要部署ntp服务:yum2yum源IP ntp(如果本地有挂载yum源,直接yuminstallntp即可)1、修改/etc/ntp.conf内容,本目录下的配置拷过去进行修改。vim/etc/ntp.conf#创建日志路径#mkdir-p/data/ntpdata------------------......
  • Linux开发相关命令整理
    1.反转shell2.ldd3.objdump4.ldconfig5.telnet6.nc7.netstat8.ss9.tcpdump1.反转shell攻击者主机执行:nc-nlvp<port>被攻击者执行:bash-i>&/dev/tcp/<ip>/<port>0>&1也可以用于把局域网下主机终端暴露给公网下,这在特定场景下比较方便2.ldd用于查......
  • centos 查看 PCIE 接口 PCI-E Linux下查看PCIe版本及速率
    centos查看PCIE接口lspci|grep-ipcie#lspci|grep-ipcie01:00.0Ethernetcontroller:BroadcomInc.andsubsidiariesNetXtremeBCM57202-portGigabitEthernetPCIe01:00.1Ethernetcontroller:BroadcomInc.andsubsidiariesNetXtremeBCM57202-portGig......
  • 能用到退休的600条Linux命令,助你解决95%的问题
    你们好,我的网工朋友。曾经传统网工的工作中,很少用到Linux,但网络技术的更新,搞网络,多少得会点这玩意儿。正所谓书到用时方恨少,命令到用时全忘了,Linux命令真心多到爆炸。这不,今天就给你来一篇史上最全Linux命令总结的文章,命令有点多,一不小心整理了2w字,建议先收藏后阅读哈。今日文章阅......
  • windows本地免密登录linux
    环境:虚拟机CentOS7.5\本地Windows11准备:虚拟机已生成秘钥1、在windows本地生成密钥ssh-keygen-trsa密钥生成到 C:\Users\Administrator\.ssh2、上传公钥文件至虚拟机3、公钥追加至虚拟机.ssh/authorized_keys中 本地Windows免密登录虚拟机_windows终端免密登录......
  • RockyLinux8.8 本地镜像仓库搭建过程
    1.本地环境RockyLinux: RockyLinuxrelease8.8(GreenObsidian)python: 3.x.x公网镜像:rockylinux镜像_rockylinux下载地址_rockylinux安装教程-阿里巴巴开源镜像站(aliyun.com)2.说明Rockylinux是基于Redhat8在编译版本,在redhat8版本中相比较于redhat7中的本地镜......
  • Linux_6 thrift
    thrift实现匹配系统title:(在线学习平台)link:(https://www.acwing.com/)cover:(https://cdn.acwing.com/media/activity/surface/log.png)基本架构实现match_system的服务端定义接口通过.thrift文件定义接口定义完成后通过命令自动生成接口代码的框架#编写接口文......
  • Linux基础45 firewalld防火墙, 参数, 区域配置, 放行策略, 端口转发, 富规则, 防火墙
    firewalld防火墙一、防火墙安全概述在Centos7系统中继承了多款防火墙管理工具,默认启动的是firewalld(动态防火墙管理器)防火墙管理工具,Firewalld支持CLI(命令行)以及(图形)的两种管理方式。对于接触Linux较早的人员对Iptables比较熟悉,但由于Iptables的规则比较的麻烦,并且对网络有......