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

1.grep指令

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

1.1grep的普通使用

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

[root@iZbp19b5lvg8xtpf1tzrenZ blog]# cat test.txt
aaaaaaaaaaaaaaa
bbbbbbbbbbbbbbbccccccccccccccc
cccccccccccccccbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
bbbbbbbbbbbbbbb
asddasdwdssdswwwwwwwwwww
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
bbbbbbbbbbbbbbbccccccccccccccc
cccccccccccccccbbbbbbbbbbbbbb
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 blogadding: 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.zipcreating: 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.txt2 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.mzph.cn/pingmian/1409.shtml

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

相关文章

MyBatis 从入门到精通:分页在MyBatis中使用

MyBatis 从入门到精通:分页在MyBatis中使用 先欣赏下美女🚀分页在MyBatis中使用👩‍💻摘要🎯引言💡正文内容😕 为什么要分页?🚀 使用Limit分页介绍📄 使用Li…

【项目】仿muduo库One Thread One Loop式主从Reactor模型实现高并发服务器(TcpServer板块)

【项目】仿muduo库One Thread One Loop式主从Reactor模型实现⾼并发服务器(TcpServer板块) 一、思路图二、模式关系图三、定时器的设计1、Linux本身给我们的定时器2、我们自己实现的定时器(1)代码部分(2)思…

Linux华硕笔记本安装ROG Asusctl

基础环境 适用系统: linux mint 21ubuntu 22.04 安装版本: asusctl-5.0.10rust 1.77.2 构建 安装编译环境 sudo apt-get update sudo apt-get install -y \libasound2-dev \libfreetype6-dev \libexpat1-dev \libxcb-composite0-dev \libssl-dev …

数字谐振器设计

数字谐振器设计 电路里的谐振:当电路中激励的频率等于电路的固有频率时,电路电磁振荡的振幅也将达到峰值。 形式一 形式二 例子

4.21java聊天室项目小结

基本完成了用户的登录注册功能,可以实现用户账号登录和邮箱登录功能,忘记密码通过邮箱发送验证码找回,注册账号功能,并传递给客户端更新数据库的表内容 注册功能: 注册成功后密码进行MD5加密并通过服务器保存到数据库…

springboot结合elasticJob

先说一说什么是elasticJob。 ElasticJob是一个分布式任务调度的解决方案,它由俩个相互独立的子项目Elastic-job-lite和Elastic- job-cloud组成。 任务调度:是指系统为了自动完成特定任务,在任务的特定时刻去执行任务的过程。 分布式&#xf…

剑指offer剪绳子;leetcode:LCR 131. 砍竹子 I

现需要将一根长为正整数 bamboo_len 的竹子砍为若干段&#xff0c;每段长度均为正整数。请返回每段竹子长度的最大乘积是多少。 示例 1&#xff1a; 输入: bamboo_len 12 输出: 81提示&#xff1a; 2 < bamboo_len < 58 注意&#xff1a;本题与主站 343 题相同&#…

SQLite导出数据库至sql文件

SQLite是一款实现了自包含、无服务器、零配置、事务性SQL数据库引擎的软件库。SQLite是世界上部署最广泛的SQL数据库引擎。 SQLite 是非常小的&#xff0c;是轻量级的&#xff0c;完全配置时小于 400KiB&#xff0c;省略可选功能配置时小于250KiB。 SQLite 源代码不受版权限制。…

Ubuntu 20.04.06 PCL C++学习记录(二十六)

[TOC]PCL中点云配准模块的学习 学习背景 参考书籍&#xff1a;《点云库PCL从入门到精通》以及官方代码PCL官方代码链接,&#xff0c;PCL版本为1.10.0&#xff0c;CMake版本为3.16&#xff0c;可用点云下载地址 学习内容 在代码中使用ICP迭代最近点算法&#xff0c;程序随机…

2024上海(国际)智慧氧舱暨生物细胞博览会

2024上海(国际)智慧氧舱暨生物细胞博览会 时间 2024年9月21日-23日 地址 上海市浦东新区张江科学会堂 展会亮点 展示国内外医疗器械行业最新发展动态&#xff0c;探讨医疗器械行业发展趋势促进医疗 器械行业健康发展将为全国从事微高压氧舱、医用气调库及其他医用设备、医…

二极管分类及用途

二极管分类及用途 通用开关二极管 特点&#xff1a;电流小&#xff0c;工作频率高 选型依据&#xff1a;正向电流、正向压降、功耗&#xff0c;反向最大电压&#xff0c;反向恢复时间&#xff0c;封装等 类型&#xff1a;BAS316 ; IN4148WS 应用电路: 说明&#xff1a;应用…

【Linux】引导过程与服务控制

目录 一、Linux操作系统引导过程 1.linux开机引导过程 2.系统初始化进程 1.init进程 2.进程启动方式 二、运行级别和Systemd单元类型 1.运行级别 2.Systemd 三、启动类故障恢复 1.修复MBR扇区故障 2.修复GRUB引导故障 3.root密码忘记的修改方式 四、系统服务控制 …

MATLAB求和函数

语法 S sum(A) S sum(A,“all”) S sum(A,dim) S sum(A,vecdim) S sum(,outtype) S sum(,nanflag) 说明 示例 S sum(A) 返回沿大小大于 1 的第一个数组维度计算的元素之和。 如果 A 是向量&#xff0c;则 sum(A) 返回元素之和。 如果 A 是矩阵&#xff0c;则 sum(A) 将…

配置静态路由实现全网互通

1、实验环境 如图下所示&#xff0c;三台路由器R1&#xff0e;R2&#xff0c;R3两两互连&#xff0c;每台路由器上都配置了Loopback地址模拟网络环境。 2、需求描述 需要在三台路由器上配置静态路由&#xff0c;以实现各网段之间的互通。 若要实现全网互通,必须明确如下两个问…

UI5 快速入门教程

环境准备 node >16.8 ,VSCode&#xff0c;官方网址 开始 创建一个根文件夹&#xff0c;根文件中创建一个package.json文件 {"name": "quickstart-tutorial","private": true,"version": "1.0.0","author":…

【JavaWeb】Day51.Mybatis动态SQL

什么是动态SQL 在页面原型中&#xff0c;列表上方的条件是动态的&#xff0c;是可以不传递的&#xff0c;也可以只传递其中的1个或者2个或者全部。 而在我们刚才编写的SQL语句中&#xff0c;我们会看到&#xff0c;我们将三个条件直接写死了。 如果页面只传递了参数姓名name 字…

flutter 实现表单的封装包含下拉框和输入框

一、表单封装组件实现效果 //表单组件 Widget buildFormWidget(List<InputModel> formList,{required GlobalKey<FormState> formKey}) {return Form(key: formKey,child: Column(children: formList.map((item) {return Column(crossAxisAlignment: CrossAxisAlig…

java优先级队列(堆)详解

一、优先级概念 什么是优先级&#xff1a;比如女士优先&#xff0c;个子低的优先排到前面去&#xff0c;有一部分数据具备优先级&#xff0c;要以优先级的顺序将顺序存储起来。 前面介绍过队列&#xff0c;队列是一种先进先出(FIFO)的数据结构&#xff0c;但有些情况下&#…

Java:String类

目录 1.String类的重要性2.String对象的比较2.1 比较是否引用同一个对象2.2 boolean equals(Object anObject) 方法&#xff1a;按照字典序比较2.3int compareTo(String s)方法: 按照字典序进行比较2.4 boolean equalsIgnoreCase(Object anObject)方法&#xff1a;忽略大小写的…

word批量修改表格样式

利用宏&#xff0c;批量选中表格&#xff0c;然后利用段落和表设计来操作。 利用宏&#xff0c;批量选中表格&#xff0c;参考百度安全验证段落&#xff0c;表格里面的内容有空格&#xff0c;应该是有缩进&#xff0c;在段落中去掉缩进&#xff0c;即缩进-特殊&#xff0c;选择…