Linux的基本命令

文章目录

  • grep的基本查询
  • grep的高亮查询

grep的基本查询

grep命令可以用于在文件中查找指定内容,并将包含该内容的行打印出来。以下是几种不同的实现方法:

使用基本语法格式:

(1)grep “要查找的内容” 文件名

例如:要在一个名为file.txt的文件中查找包含"hello"的行,可以使用命令:
grep "hello" file.txt

(2)同时查找多个文件:grep “要查找的内容” 文件1 文件2 文件3 …


例如:要在file1.txt、file2.txt和file3.txt的文件中查找包含"world"的行,
可以使用命令:grep "world" file1.txt file2.txt file3.txt

(3)使用正则表达式进行模式匹配:

grep -E “正则表达式” 文件名

例如:要在file.txt文件中查找以字母开头的行,可以使用命令:
grep -E "^[a-zA-Z]" file.txt

(4)忽略字符大小写:

grep -i “要查找的内容” 文件名

例如:要在file.txt文件中查找包含"Hello"(不区分大小写)的行,可以使用命令:
grep -i "Hello" file.txt

(5)递归查找子目录中的文件:

grep -r “要查找的内容” 目录名

例如:要在当前目录及其子目录中查找包含"test"的行,可以使用命令:
grep -r "test" .

(6)只打印匹配的内容:

grep -o “要查找的内容” 文件名

例如:要在file.txt文件中只打印出包含"example"的内容,可以使用命令:
grep -o "example" file.txt
这些是一些常用的grep命令的实现方法,可以根据具体需求选用适当的方式来查找文件内容。

grep的高亮查询

grep 是一个强大的文本搜索工具,它允许你在文件中搜索匹配特定模式的行。为了使搜索结果更加突出和易于阅读,你可以使用 --color 选项来高亮显示匹配的文本。

以下是如何使用 grep 进行高亮查询的示例:

(1)基本用法:

grep --color=auto ‘pattern’ filename

`在这里,'pattern' 是你要搜索的`文本或正则表达式,而 'filename' 是你要搜索的文件名。
--color=auto 选项告诉 grep 在输出中自动高亮匹配的文本。

(2). 递归搜索:

如果你想在一个目录及其子目录中递归搜索,可以使用 -r 或 -R 选项:

grep -r --color=auto ‘pattern’ directory/

(3)忽略大小写:

为了进行不区分大小写的搜索,你可以添加 -i 选项:

grep -i --color=auto ‘pattern’ filename

(4)显示行号:

如果你还想看到匹配行的行号,可以使用 -n 选项:

grep -n --color=auto ‘pattern’ filename

(5)高亮查询多个文件:
你可以同时查询多个文件,例如:

grep -n --color=auto ‘pattern’ file1 file2 file3

(6)使用正则表达式:
grep 默认支持基本正则表达式。但是,如果你想使用扩展正则表达式,可以使用 -E 选项:

grep -E --color=auto ‘pattern1|pattern2’ filename

(7)高亮查询并统计匹配次数:
如果你想看到每个文件的匹配次数,可以使用 -c 选项:

grep -c --color=auto ‘pattern’ filename

(8)持久化高亮:
如果你希望 grep 的高亮效果在重定向到文件或另一个命令时仍然保持,你可以使用 --color=always 而不是 --color=auto。

(9)默认高亮:
如果你经常使用 grep 并希望默认高亮显示匹配的文本,可以设置 GREP_OPTIONS 环境变量:

export GREP_OPTIONS=‘–color=auto’

这样,每次你运行 grep 时,匹配的文本都会自动高亮显示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/577912.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【SpringCloud笔记】(10)消息总线之Bus

Bus 前言 戳我了解Config 学习Config中我们遇到了一个问题: 当我们修改了GitHub上配置文件内容,微服务需要配置动态刷新并且需要手动向客户端发送post请求刷新微服务之后才能获取到GitHub修改过后的内容 假如有多个微服务客户端3355/3366/3377…等等…

Android 手机对于Arduino蓝牙控制解决方案

1、Android系统概述 ​ Android 系统是 Google 公司基于 Linux 内核开发的移动端操作系统,适用于智能手机智能手表平板电脑等设备,最新的版本为 7.1。Android系统具有免费开源的优势,任何企业与个人都可以查阅公开的 API 文档,并在自己开发的应用中通过调…

xlua源码分析(四) lua访问C#的值类型

xlua源码分析(四) lua访问C#的值类型 上一节我们主要探讨了C#是如何使用interface和delegate访问lua层的table和function的,本节我们跟着Examples 05_NoGc,来看看xlua是如何实现lua层无gc访问C#的值类型的。 首先例子中用到的lua…

使用OpenSSL生成自签名SSL/TLS证书和私钥

使用OpenSSL生成自签名SSL/TLS证书和私钥 前提: 系统安装了OpenSSL; 系统:windows、linux都可; 1 生成私钥 创建一个名为 server.key 的私钥文件,并使用 RSA 算法生成一个 2048 位的密钥。 openssl genrsa -out s…

敢问路在何方,路在脚下

运维工程师的出路到底在哪里? 他是谁 运维工程师(Operations)负责维护并确保整个服务的高可用性,同时不断优化系统架构提升部署效率、优化资源利用率提高整体的ROI。运维工程师面对的最大挑战是大规模集群的管理问题&#xff0c…

List那些坑

很多文章都介绍过这些坑,本文做个记录,并提供解决方案。 1.Arrays.asList的坑 1.1现象 情况1:通过Arrays.asList方法生成的List数据不支持添加操作 使用Arrays.asList方法生成的List数据,不能对其进行删除或者添加操作。代码示例…

学Java的第四天

一、switch语句 switch (表达式) { case 1: 语句体1; break; case 2: 语句体2; break; ... default: 语句体n1; break; } 首先计算表达式的值,然后和case 比较,有对应的值就执行对应的语句,遇到 break 就结束。 最后如果所有的cas…

【MySQL】数据库之存储引擎

目录 一、什么是存储引擎 MySQL 整个查询执行过程,即MySQL的工作原理? 二、MyISAM 与 InnoDB 的区别? 三、如何查看当前表的存储引擎? 1.查看当前的存储引擎 2.查看数据库支持哪些存储引擎 四、如何设置存储引擎?…

如何通过内网穿透实现远程访问本地Linux SVN服务

文章目录 前言1. Ubuntu安装SVN服务2. 修改配置文件2.1 修改svnserve.conf文件2.2 修改passwd文件2.3 修改authz文件 3. 启动svn服务4. 内网穿透4.1 安装cpolar内网穿透4.2 创建隧道映射本地端口 5. 测试公网访问6. 配置固定公网TCP端口地址6.1 保留一个固定的公网TCP端口地址6…

树莓派编译uboot及内核

为了实验ebpf,需要自己编译内核开启相关选项,正好手头有树莓派的板子,所以正好用上。 更换内核 首先我自己用官方工具在sd卡上烧录了64位无桌面的系统,然后按照官方的文档,进行了内核的交叉编译,更换后使…

Vue3组合式-依赖注入provideinject

一、注意点 专门强调了是3.0且是组合式,不是2.0不支持也不是选项式不支持provide&&inject,是支持但是有很明显的弊端,不建议使用 二、场景 官方的解释: 通常情况下,当我们需要从父组件向子组件传递数据时,会…

MySQL MyCAT读写分离

MyCAT读写分离 环境部署 1.下载JDk:官网下载 2.解压文件 tar -xf jdf-8u181-linux-x64.tar.gz -C /usr/local/3.配置环境变量 [rootmycat ~]# vim /etc/profile.d/java.sh export JAVA_HOME/usr/local/java export PATH$JAVA_HOME/bin:$PATH export CLASSPATH.…

论文阅读——X-Decoder

Generalized Decoding for Pixel, Image, and Language Towards a Generalized Multi-Modal Foundation Model 1、概述 X-Decoder没有为视觉和VL任务开发统一的接口,而是建立了一个通用的解码范式,该范式可以通过采用共同的(例如语义&#…

IDEA Maven Helper插件 解决jar冲突

Jar包冲突报错 程序抛出java.lang.ClassNotFoundException异常; 程序抛出java.lang.NoSuchMethodError异常; 程序抛出java.lang.NoClassDefFoundError异常; 程序抛出java.lang.LinkageError异常等;Maven Jar包管理机制 在Maven项…

【Dart】P2 数据类型(int、double、String、bool、List、Map)

Dart 数据类型 Dart 数据类型一览Dart 判断数据类型字符串类型数值类型布尔类型数组类型字典类型 Dart 数据类型一览 类型数据类型描述数值int整型数值double浮点型字符串String布尔bool数组List又称为列表字典Maps键值对 Dart 判断数据类型 void main() {var str 123;print…

微信小程序使用canvas制作海报并保存到本地相册(超级详细)

案例图 分析案例图都有哪些元素 1.渐变背景 2.圆形头像 3.文字 4.文字超出换行 5.图片居中 6.文字居中 7.单位适配 8.弹窗保存图片。因为一个个绘制图形太麻烦所以这里都采用了方法封装。 canvas api介绍 最后有全部代码,复制即用。 data数据 data() {return {myO…

【Linux--信号】

目录 一、信号的概念1.1查看系统的信号1.2信号的处理方式 二、信号的产生方式2.1通过终端按键2.2kill命令2.3系统调用2.4软条件产生信号2.5硬件异常产生信号 三、信号的保存3.1概念的认识3.2sigset_t3.3信号集操作函数3.4sigprocmask && sigpending3.4.1sigprocmask3.4…

Cassandra入门试用

文章目录 1. 安装1.1 官方文档1.2 安装前提1.3 安装cassandra 2. 集群配置3. Java客户端3.1 Maven依赖3.2 客户端代码 4. 性能测试4.1 压测结论4.2 压测代码 1. 安装 1.1 官方文档 http://cassandra.apache.org/doc/latest/getting_started/index.html 1.2 安装前提 安装Ja…

【云原生、k8s】管理Kubernetes应用搭建与部署

一、Kubernetes部署方式 官方提供Kubernetes部署3种方式 (一)minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernetes或日常开发的用户使用。不能用于生产环境。 官方文档:https://kubernetes.io/docs/setup/minikube/ (二)二进制包 …

【工具使用-A2B】使用A2B配置16通道车载音频系统

一,简介 工作中需要使用A2B搭建车载16通道演示系统,故本文记录一下,16通道车载音频系统中A2B工程相关配置,供参考。 使用FPGA输出双TDM8的信号给到A2B Master节点,音频数据经过A2B双绞线,传输到A2B Slave…