Linux——(grep指令及zip/tar压缩指令)

news2025/1/16 3:45:39

1.grep指令

语法: grep【选项】查找字符串 文件
功能: 在文件中搜索字符串,将找到的行打印出来
常用选项:
-i :忽略大小写,所以大小写视为相同
-n : 顺便输出行号
-v :反向选择,即显示除了查找字符串外的所有字符。

1.1grep的普通使用

先创建一个文件,里面随便输入一些字符串。
文件内容:

[root@iZbp19b5lvg8xtpf1tzrenZ blog]# cat test.txt
aaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb

ccccccccccccccc
ccccccccccccccc

bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
asddasdwdssds

wwwwwwwwwww
wwwww
eeeeeeeeeee
qqqqqqqqqqqq

假设我们要找带有bbb的字符串
打印结果:

[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep bbb test.txt
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb

如果要输出行号的话

[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep -n bbb test.txt
2:bbbbbbbbbbbbbbb
7:bbbbbbbbbbbbbb
8:bbbbbbbbbbbbbbb
9:bbbbbbbbbbbbbbb

这里的行号为在文件当中的行号
输出除选定字符串外的所有字符串再加上行号

[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep -nv bbb test.txt
1:aaaaaaaaaaaaaaa
3:
4:ccccccccccccccc
5:ccccccccccccccc
6:
10:asddasdwdssds
11:
12:wwwwwwwwwww
13:wwwww
14:eeeeeeeeeee
15:qqqqqqqqqqqq

grep与通道 | 的使用

利用通道| 可以快速找到自己需要的内容,比如在查看日志的时候,如果确定了自己想要看的内容就可以利用|和grep。
下面是head 和 grep的|使用。

[root@iZbp19b5lvg8xtpf1tzrenZ blog]# head -n8 test.txt
aaaaaaaaaaaaaaa
bbbbbbbbbbbbbbb

ccccccccccccccc
ccccccccccccccc

bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# head -n8 test.txt|grep bbb 
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
[root@iZbp19b5lvg8xtpf1tzrenZ blog]# grep bbb test.txt
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb

Linux下的打包压缩

2.zip/unzip指令

语法:zip压缩文件 zip目录或文件
功能:将目录或文件压缩成zip格式
常用选项
-r 递归处理,将指定目录下的所有文件和子目录一并处理

2.1zip的使用

解压到当前文件

[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# tree blog
blog
├── dir
│   └── test
└── test.txt

[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# zip -r blog.zip blog
  adding: blog/ (stored 0%)
  adding: blog/dir/ (stored 0%)
  adding: blog/dir/test/ (stored 0%)
  adding: blog/test.txt (deflated 72%)
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog  blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# 

解压到指定文件

解压到tmp目录: unzip test2.zip -d /tmp

2.2 unzip的使用

[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog.tgz  blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# unzip blog.zip
Archive:  blog.zip
   creating: blog/
   creating: blog/dir/
   creating: blog/dir/test/
  inflating: blog/test.txt           
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog  blog.tgz  blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# tree blog
blog
├── dir
│   └── test
└── test.txt

2 directories, 1 file

3.tar指令

语法: tar [-cxtzjvf] 文件与目录…参数:
常用选项:
-c :建立一个压缩文件的参数指令(create 的意思);
-x :解开一个压缩文件的参数指令!
-t :查看 tarfile 里面的文件!
-z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
-j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
-v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
-f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
-C : 解压到指定目录
虽然选项很多,但是最最简单的用法常用到的其实就5个。czf压缩,cvzf压缩加显示过程
xzf解压 xvzf解压加显示解压过程

3.1tar的压缩过程

[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out  blog  code  code.c  tmp  trash  yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# tar -czf blog.tgz blog
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out  blog  blog.tgz  code  code.c  tmp  trash  yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# rm -fr blog.tgz
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out  blog  code  code.c  tmp  trash  yui.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# tar -cvzf blog.tgz blog
blog/
blog/dir/
blog/dir/test/
blog/test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ ~]# ls
a.out  blog  blog.tgz  code  code.c  tmp  trash  yui.txt

3.2tar的解压过程

[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# rm -fr blog
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog.tgz  blog.zip
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# tar -xvzf blog.tgz
blog/
blog/dir/
blog/dir/test/
blog/test.txt
[root@iZbp19b5lvg8xtpf1tzrenZ tmp]# ls
blog  blog.tgz  blog.zip

在这里插入图片描述

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

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

相关文章

综合大实验

题目: 1、R4为ISP,其上只配置IP地址;R4与其他所直连设备间均使用公有IP; 2、R3-R5、R6、R7为MGRE环境,R3为中心站点; 3、整个OSPF环境IP基于172.16.0.0/16划分;除了R12有两个环回,其…

未来五十年,智能科技将如何改变传统行业格局?

未来五十年内,随着人工智能(AI)和智能科技的不断发展,许多行业将面临被取代的风险。虽然这种趋势可能会带来一些担忧,但也将为人类社会带来巨大的变革。下面将详细探讨哪些行业可能会在未来被智能科技所取代。 ▶ 制造…

【ruoyi-vue】登录解析(前端)

登录代码 1、登录之后做了什么? 执行登陆方法,成功之后,路由跳转到指定路径或者根目录 2、this.$store.dispatch是什么意思? this.$store.dispatch(‘Login’, this.loginForm) 来调取store里的user.js的login方法3、this.$r…

【Go语言】接口类型(一)接口类型与接口的值

本文是介绍golang接口类型的第一篇,主要介绍接口类型与接口类型的值的相关概念。 1. 静态类型、动态类型、动态值 所谓的静态类型(即 static type),就是变量声明的时候的类型。 var age int // int 是静态类型 var name strin…

SSTV音频转图片

SSTV工具有很多,这里使用RX-SSTV慢扫描工具 下载安装 RX-SSTV解码软件 下载地址:https://www.qsl.net/on6mu/rxsstv.htm 一直点下一步,安装成功如下图: 虚拟声卡e2eSoft 由于SSTV工具是根据音频传递图片信息,正常解法需要一…

【动态规划】C++ dp子数组问题(最大/最长:环形/子数组和、乘积最大/为正数、单词拆分、子串)

文章目录 1. 前言 - 理解动态规划算法2. 例题最大子数组和 3. 算法题3.1_环形子数组的最大和3.2_乘积最大子数组3.3_乘积为正数的最长子数组长度3.4_等差数列划分3.5_最长湍流子数组3.6_单词拆分467.环绕字符串中唯一的子字符串 1. 前言 - 理解动态规划算法 关于 动态规划的理…

chrome 浏览器 f12 如何查看 websocket 消息?

1. 打开目标页面 2. f12--》网络--》WS,然后刷新页面( 如果不刷页面,就会看不到 websocket 请求,因为 websocket 是长连接,页面加载后只发出一次连接请求,不像 http 接口,不用刷新页面,待会儿也…

常见UI设计模式有哪些?从小白到资深必学

通过了解如何以及何时使用,每种 UI 设计模式都有其特定的目的,可以创建一个一致高效的界面。UI 设计模式为用户界面设计者提供了一种通用语言,并为网站和应用程序的用户提供了一致性。本指南,即时设计总结了 UI 设计模式和 UI 设计…

百种提权及手段一览系列第5集

特权升级的危险是显而易见的。通过提升权限,攻击者可以绕过网络安全措施,从而损害数据完整性、机密性和系统可用性。对于组织而言,这可能会导致数据泄露、系统停机以及潜在的法律和声誉后果。识别权限升级的迹象并部署预防性网络安全措施对于…

【团体程序设计天梯赛 往年关键真题 详细分析完整AC代码】L2-009 抢红包(排序) L2-010 排座位 (dfs)

【团体程序设计天梯赛 往年关键真题 详细分析&完整AC代码】搞懂了赛场上拿下就稳 【团体程序设计天梯赛 往年关键真题 25分题合集 详细分析&完整AC代码】(L2-001 - L2-024)搞懂了赛场上拿下就稳了 【团体程序设计天梯赛 往年关键真题 25分题合…

Vue2学习笔记(尚硅谷天禹老师)

目录 一、入门案例 二、模板语法 三、数据绑定 四、el和data的两种写法 五、MVVM模型 六、Object.defineproperty方法 七、Vue中响应式原理 八、数据代理 九、methods配置项 十、Vue中的事件处理 十一、Vue中的键盘事件 十二、计算属性 十三、监视属性watch 十四、绑定Class样式…

《系统架构设计师教程(第2版)》第10章-软件架构的演化和维护-01-软件架构演化概述

文章目录 1. 演化的重要性2. 架构演化示例 教材中,本节名为:“软件架构演化和定义的关系” 1. 演化的重要性 演化目的:维持软件架构自身的有用性 为什么说,软件架构是演化来的,而不是设计来的? 软件架构的…

N元语言模型

第1关:预测句子概率 任务描述 本关任务:利用二元语言模型计算句子的概率 相关知识 为了完成本关任务,你需要掌握:1.条件概率计算方式。 2.二元语言模型相关知识。 条件概率计算公式 条件概率是指事件A在事件B发生的条件下发…

麒麟龙芯loongarch64 electron 打包deb包

在麒麟龙芯(loongarch64)电脑上 使用electron 开发桌面应用。之前用electron-packager 打包出来的是文件夹 是 unpack 包。现在需要打包deb包,依据开发指南开始打包。 在项目文件夹下 打开终端 输入 npm run packager 先打包unpack包 然后…

AIGC算法3:Attention及其变体

1.Attention Attention是Transformer的核心部分,Attention机制帮助模型进行信息筛选,通过Q,K,V,对信息进行加工 1.1 attention计算公式 Attention ⁡ ( Q , K , V ) softmax ⁡ ( Q K T d k ) V \operatorname{Attention}(Q, K…

Fisher 准则分类

目录 一、什么是Fisher 准则 二、具体实例 三、代码实现 四、结果 一、什么是Fisher 准则 Fisher准则,即Fisher判别准则(Fisher Discriminant Criterion),是统计学和机器学习中常用的一种分类方法,由统计学家罗纳…

【golang学习之旅】Go 的基本数据类型

系列文章 【golang学习之旅】报错:a declared but not used 目录 系列文章总览布尔型(bool)字符串型(string)整数型(int、uint、byte、rune)浮点型(float32、float64)复…

网络安全之防范钓鱼邮件

随着互联网的快速发展,新的网络攻击形式“网络钓鱼”呈现逐年上升的趋势,利用网络钓鱼进行欺骗的行为越来越猖獗,对互联网的安全威胁越来越大。网络钓鱼最常见的欺骗方式就是向目标群体发送钓鱼邮件,而邮件标题和内容,…

类的六个构造函数相关干货

构造函数 特点 1.名字与类名相同 2.无返回值 3.对象实例化的时候编译器自动调用这个函数 4.构造函数可以重载(无参构造函数,拷贝构造等) 5.如果类中没有显式定义构造函数(深拷贝),则编译器会自动生成一个…

OpenSPG v0.0.3 发布,新增大模型统一知识抽取图谱可视化

基于非结构化文档的知识构建一直是知识图谱大规模落地的关键难题之一,4 月 23 日,OpenSPG 发布 v0.0.3 版本,正式发布了大模型统一知识抽取功能,可大幅降低领域知识图谱的构建成本。还可用于增强大模型缓解幻觉并提升稳定性&#…