当前位置: 首页 > news >正文

Linux常用指令-----下

Linux常用指令------上
Linux常用指令------中

Linux系列


文章目录

  • Linux系列
  • 前言
  • 一、more指令
  • 二、less指令
  • 三、head指令和tail指令
  • 四、grep指令
  • 五、zip指令和unzip指令
  • 六、tar指令
    • 1、打包压缩
    • 2. 预览
    • 3. 解压解包


前言


在上一篇博客中,我給大家介绍了cat指令(将文件信息全部显示在屏幕),但是在我们做一个项目时,往往文件内容比较多,这时再使用cat指令就不太合适了。

一、more指令

这个指令可以帮助我们分页查看指定文件。

首先我们先整一个存有大量数据的文件,方便我们讲解。

在这里插入图片描述

语法:more [选项][文件]
功能:more命令,功能类似 cat

这样我们就将一万行数据,存入了test.txt文件,这时如果我们使用cat指令它就会将这一万行数据全部打印在屏幕,这对我们查看文件中的内容是非常部友好的,下面为截取的部分数据:
在这里插入图片描述

在这里插入图片描述
这时我们就可以使用more指令代替cat指令操作,它不像cat指令直接将文件内容全部打印出来,
它是,每次显示一屏幕内容:
在这里插入图片描述
它有一些简单的交互操作。比如按空格键可以显示下一屏内容,按回车键可以逐行显示下一行内容。如果想退出查看,按 q 键即可。这些功能不方便展示,大家在电脑上自己操作吧。
常用选项:

  • q 退出more

当我们不想再向下查找内容时,可以直接点击q对出该指令。

二、less指令

less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看,但若使用了 less 时,就可以使用 [pageup][pagedown](键盘上的上下键) 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容!
除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜
语法: less [参数] 文件
功能:
less与more类似,但使用less可以随意浏览文件,而more仅能向前移动,却不能向后移动,而且less在查看之前不会加载整个文件。

选项:

  • -i 忽略搜索时的大小写
  • -N 显示每行的行号
  • /字符串:向下搜索“字符串”的功能
  • ?字符串:向上搜索“字符串”的功能
  • n:重复前一个搜索(与 / 或 ? 有关)
  • N:反向重复前一个搜索(与 / 或 ? 有关)
  • q:退出指令

使用
显示行号打印
在这里插入图片描述

在这里插入图片描述
向上搜索字符串
在这里插入图片描述在这里插入图片描述
这样它就将包含222这个字符串的数据打印出来了。
在这里插入图片描述
这里的向上、向下查找,是相对于我们当前输入位置来定义的可以看到当它找到第一个含有目标字符串的数据,就会停止。
在这里插入图片描述

向下查找和这里使用方法类似,剩下的选项大家可以下去自己尝试。

三、head指令和tail指令

head 与 tail 就像它的名字一样的浅显易懂,它是用来显示开头或结尾某个数量的文字区块head 用来显示档案的开头至标准输出(屏幕)中,而 tail 想当然尔就是看档案的结尾。

语法: head [参数]… [文件]…
功能:
head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。

使用:
在这里插入图片描述
默认显示文件前十行数据输入到标准输出中(屏幕)。

tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容.

语法: tail[必要参数][选择参数][文件]
功能: 用于显示指定文件末尾内容,不指定文件时,作为输入信息进行处理。常用查看日志文件。

使用:
不指定文件:
在这里插入图片描述
tail指令默认将文件最后十行数据输入到标准输出中。

当然head指令和tail指令都可以获取文件的指定多行:
在这里插入图片描述
所以它们都具备-n<行数> 显示行数常用选项。
head指令和tail指令可以和管道文件配合,用于截取某一部分数据。
管道文件:
它就像一个管道,一个进程向管道写入数据,另一个进程从管道读取数据。当一个程序将数据输出到管道文件的一端,另一个程序就可以从管道文件的另一端读取这些数据进行处理,数据是按照写入的顺序依次被读取的,这就是“先进先出”的体现。管道文件在数据处理流程中起到了衔接不同程序模块的作用,让数据能够在多个程序之间有序地传递。
管道文件展现形式:‘|’

理论总是比较难懂的,接下来我们看如何使用管道文件配合head指令和tail指令对文件内容进行截取:
在这里插入图片描述
首先我们将test.txt文件中的前3001行输入到管道(管道文件),然后再用tail指令将管道文件中的最后20行打印到标准输出,当然我们也可以使用输出重定向,将截取的数据,输入到其他文件中,相信大家在看过前两篇文章后,很容易理解这里。

管道文件的还有很多,大家可以结合我们介绍的指令再自己探索一下。

四、grep指令

语法: grep [选项] 搜寻字符串 文件
功能: 在文件中搜索字符串,将找到的行全部打印出来

使用:
在这里插入图片描述
常用选项:

  • -i :忽略大小写的不同,所以大小写视为相同
  • -n :顺便输出行号
  • -v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

为了大家更好的理解,我将test.txt文件的数据更行为下面:
在这里插入图片描述

-i选项,不再区分大小写。
在这里插入图片描述
-v反向选择,即只打印不含有目标字符串的行文本。

在这里插入图片描述

接着我再向文件中输入几个空行

在这里插入图片描述
-n将行号一起显示
在这里插入图片描述

五、zip指令和unzip指令

zip/unzip指令是Linux下的一种压缩和解压缩的指令

语法: zip 压缩文件.zip 目录或文件
功能: 将目录或文件压缩成zip格式

使用:
对单个文件的压缩、解压:
在这里插入图片描述
这里我们将liang文件压缩为一个名为liang.zip的压缩文件。(这个压缩文件的名字是由我们自己绝定的,一般为了方便查看我们都将它同源文件保持一致)

在这里插入图片描述
对压缩后的文件进行解压。
对目录文件进行压缩、解压:

在这里插入图片描述
对dr目录文件进行递归压缩。
在这里插入图片描述

这个指令相对来说比较简单,而我们在压缩文件时一般不使用它。

六、tar指令

tar指令的功能是非常强大的。tar指令也是Linux中压缩和解压缩的一种指令,但是它与zip/unzip指令还是有所不同的,下面我们先来看一下它的用法tar指令的相关变形和作用有很多,我们主要记住下面三个就行。

1、打包压缩

对于当前路径下的,下列文件,我们可以将他们,全部打包、压缩为一个文件中。
tar caf 压缩包名 文件名(可以是多个文件)
在这里插入图片描述在这里插入图片描述

.tar 是tar指令压缩而来的意思,.gz 是压缩文件的意思,我们也可以把这个后缀简写成 .tgz

2. 预览

Linux下的预览文件就像我们在Windows下对压缩包双击查看一样。

tar tzf 压缩包名

在这里插入图片描述

3. 解压解包

tar xzf 压缩包名

首先我们在当前路径下创建一个新的下级目录,并将压缩包移至新目录下。

在这里插入图片描述

进入到压缩包所在路径下,对他进行解压:

在这里插入图片描述
解压结果:
在这里插入图片描述

可以看到文件成功解压。当然我们也可以直接指定路径解压,这个就留给大家自己尝试吧。

http://www.lryc.cn/news/505367.html

相关文章:

  • MySQL通过binlog日志进行数据恢复
  • 【AIGC】与模型对话:理解与预防ChatGPT中的常见误解
  • 字符2
  • 25年宁德时代社招在职晋升Verify测评SHL题库:语言理解+数字推理考什么?
  • 数据转换:连接数据孤岛,释放信息价值
  • 提升PHP技能:18个实用高级特性
  • MySQL基础操作(2)
  • Windows环境 (Ubuntu 24.04.1 LTS ) 国内镜像,用apt-get命令安装RabbitMQ
  • web网页前后端交互方式
  • LN61C 高精度 低功耗 小封装 电压检测芯片
  • 自动驾驶控制与规划——Project 2: 车辆横向控制
  • Bootstrap-HTML(五)图像基础样式
  • bain.js(十二):RNN神经网络实战教程 - 音乐乐谱生成 -人人都是作曲家~
  • Endnote | 查看文献所在分组
  • DateRangePickerDialog组件的用法
  • 数据库合并操作:深入理解 MERGE INTO 语句
  • 联发科MTK8788_MT8788安卓核心板安兔兔跑分_安卓主板方案商
  • 计算机网络技术基础:6.数据传输方式
  • 免费开源了一个图床工具 github-spring-boot-starter
  • Mysql之YUM安装时GPG 密钥报错问题处理
  • Hw亮度省电
  • 【信息系统项目管理师-论文真题】2015下半年论文详解
  • django的model中定义【记录修改次数】的这个字段该用什么类型
  • windows openssl编译x64版libssl.lib,编译x64版本libcurl.lib,支持https,vs2015编译器
  • 搭建 Elasticsearch 集群:完整教程
  • 如何实现序列化和反序列化?如何处理对象的生命周期管理?
  • WPF+MVVM案例实战与特效(三十八)- 封装一个自定义的数字滚动显示控件
  • docker安装Redis、docker使用Redis、docker离线安装redis、Redis离线安装
  • 单目动态新视角合成
  • STM32--IO引脚复用