Linux:文件读取指令

Linux:文件读取指令

    • cat指令
    • more指令
    • less指令
    • head指令 & tail指令
    • grep指令


cat指令

cat指令用于查看目标文件的内容。

语法:cat [选项][文件]

比如直接使用cat读取一个文件:

在这里插入图片描述
可以看到,其直接在指令的下方,输出了test.txt内部的内容。

现在我们再学习一些cat的选项:

-b:对所有非空行输出编号

在这里插入图片描述

-n:对所有行输出编号

在这里插入图片描述

-s:当有多行连续的空行时,压缩为一行空行

在这里插入图片描述
cat还有一个相对的只tac,通过名字可以看出来,其就是cat翻转后的字符串。因此这个指令的功能就是:反向输出文件内容。

在这里插入图片描述


more指令

假设我们现在有一个一万行的文件big.txt,现在我们用cat输出这个文件试试看:

请添加图片描述
可以看到,虽然cat成功输出了文件,但是其造成了刷屏,最后咱啥也看不清楚。

对于这种大型文件,我们就需要more这样的指令,来一点一点翻阅。

语法:more [选项][文件]

使用more指令,一次只会输出到刚好占满屏幕,比如对刚刚的文件使用more big.txt
在这里插入图片描述
最后只输出了27行数据,因为屏幕最多只能承载27行数据。

此时我们可以:

  • 使用Enter键,向下一行一行翻阅
  • 使用space空格键,向下一页一页翻阅
  • 输入/xxx,快速跳转到带有xxx内容的行

比如输入/1024
在这里插入图片描述
最后我们的页面中,就跳转到了带有1024内容附近的行。

我们想要退出阅读时:

q:退出more


less指令

less也是对文件或其它输出进行分页显示的工具,应该说是Linux正统查看文件内容的工具,功能极其强大。Less的用法比起 more 更加的有弹性。

more 的时候,我们并没有办法向前面翻, 只能往后面看。但若使用了 less 时,就可以使用 [pageup][pagedown] 等按键的功能来往前往后翻看文件,更容易用来查看一个文件的内容。除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。

语法:less [选项][文件]

直接对big.txt使用less big.txt

在这里插入图片描述

/xxx:向下搜索带有xxx的内容
?xxx:向上搜索带有xxx的内容
q:退出

这里就不展示以上三个功能了。

接下来我们再看两个选项:

-i:搜索时忽略大小写

当我们直接打开文件时,进行搜索是区分大小写的,比如输入/linux进行搜索:
在这里插入图片描述
可以看到,我们搜索失败了,虽然字符串中有Linux,但是由于L是大写的,其无法搜索到。

我们再以-i打开文件,然后输入/linux进行搜索:
在这里插入图片描述
可以看到,其把大写的单词也标识了出来。


head指令 & tail指令

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

语法:
head [参数][文件]
tail [参数][文件]

直接使用head时,默认输出前10行:
在这里插入图片描述
直接使用tail时,默认输出后10行:
在这里插入图片描述
选项:-n:输出前/后n行

比如用head输出前20行:
在这里插入图片描述
tail输出后15行:
在这里插入图片描述


grep指令

grep指令用于在文件中查找字符串,输出找到的行。

语法:grep [选项] 字符串 文件

比如在刚刚的big.txt中搜索1024grep 1024 big.txt

在这里插入图片描述

可以看到,其输出了所有含有1024的行,并把目标字符串额外用颜色区分开了。

常用选项:

-i:忽略大小写不同

-n:输出行号

在这里插入图片描述

-v:反向选择,即输出不包含字符串的行

big.txt输入grep -v 9 big.txt
在这里插入图片描述
此时所有带有9的行都没有输出,所以最后从88888直接跳到了100000


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

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

相关文章

高效的Gitlab Flow最佳实践

文章目录 一、git flow二、github flow三、gitlab flow四、基于gitlab flow的最佳实践1.语义化版本号2.测试发布3.bug修复 参考 业界包含三种flow: Git flowGithub flowGitlab flow 三种工作流程,有一个共同点:都采用"功能驱动式开发&…

7-Zip 23.00 beta以上版本的压缩包兼容性问题

7-Zip 23.00 beta加入了ARM64 filter,7-Zip 24.02 beta加入了RISCV filter,这两个filter不能在之前的版本解压,这两个filter目前只适用于ARM64/RISCV的扩展名是exe/dll的可执行文件,其中ARM64的exe/dll目前比较常见,RI…

kafka2.x版本配置SSL进行加密和身份验证

背景:找了一圈资料,都是东讲讲西讲讲,最后我还没搞好,最终决定参考官网说明。 官网指导手册地址:Apache Kafka 需要预备的知识,keytool和openssl 关于keytool的参考:keytool的使用-CSDN博客 …

Springboot+vue的作业管理系统+数据库+报告+免费远程调试

项目介绍: Springbootvue的作业管理系统,Javaee项目,springboot vue前后端分离项目 本文设计了一个基于Springbootvue的前后端分离的作业管理系统,采用M(model)V(view)C(controller&…

485问题汇总

485问题汇总 485 通信波形没有负电压 问题描述:设备在没有外设的时候通信波形是正常的,即5V可以出来,在连接上设备后,设备的通信波形的-5V会随着设备的增多,电压会慢慢上升。当设备连接到24台设备后,485总…

蓝桥杯十四届 试题E接龙数列

思路: 做题要想到用对立面解题,要求最短的,就可以先求最长的 //先求最长的接龙序列的长度maxx,再用长度n减去maxx //先声明dp数组,记录以0-9结尾的最长的接龙数列的长度 //以字符串的形式输入 //更新以b结尾的最大接…

linux系统------------MySQL 存储引擎

目录 一、存储引擎概念介绍 二、常用的存储引擎 2.1MyISAM 2.1.1MYlSAM的特点 2.1.2MyISAM 表支持 3 种不同的存储格式⭐: (1)静态(固定长度)表 (2)动态表 (3)压缩表 2.1.3MyISAM适…

使用 Dify 和 AWS Bedrock 玩转 Anthropic Claude 3

本篇文章,聊聊怎么比较稳定的使用 Anthropic Claude 3,以及基于目前表现非常好的模型,来做一些有趣的 AI Native 小工具。 写在前面 在实际体验了半个多月,月初上线的 Anthropic Claude Pro 后,发现 Claude 3 系列模…

学习几个地图组件(基于react)

去年开发时用的公司封装的地图组件,挺方便的,但是拓展性不强,所以看看有哪些优秀的开源地图组件吧 1、React Leaflet 介绍:开源的JavaScript库,用于在web上制作交互式地图,允许你使用React组件的方式在应…

QT作业。。

1.使用手动连接,将登录框中的取消按钮使用t4版本的连接到自定义的槽函数中,在自定义的槽函数中调用关闭函数将登录按钮使用t5版本的连接到自定义的槽函数中,在槽函数中判断u界面上输入的账号是否为"admin",密码是否为&q…

Web前端笔记+表单练习+五彩导航

一、笔记 表单&#xff1a;数据交互的一种方式 登录、注册、搜索 <from> <input type""> --- <input type"text"> --- 普通输入框&#xff0c;内容在一行显示 <input type"password"> --- 密码框 <input type"…

内存卡损坏怎么修复数据,内存卡损坏修复数据方法

内存卡损坏是许多用户都可能面临的问题。当我们的内存卡损坏时,其中存储的重要数据可能会受到威胁,承载着我们无尽回忆的数据,一旦失去,将成为大家心中永远的遗憾。因此我们迫切需要找到一种方法来修复这些数据。本文将介绍一些内存卡损坏修复数据方法,帮助大家解决因为内…

【计算机视觉】Gaussian Splatting源码解读补充(一)

本文旨在补充gwpscut创作的博文学习笔记之——3D Gaussian Splatting源码解读。 Gaussian Splatting Github地址&#xff1a;https://github.com/graphdeco-inria/gaussian-splatting 论文地址&#xff1a;https://repo-sam.inria.fr/fungraph/3d-gaussian-splatting/3d_gauss…

物联网数据报表分析

随着物联网技术的迅猛发展&#xff0c;越来越多的企业开始将物联网解决方案应用于各个领域&#xff0c;从提高生产效率到优化用户体验&#xff0c;物联网都发挥着至关重要的作用。然而&#xff0c;如何有效地分析和管理物联网产生的海量数据&#xff0c;成为企业面临的挑战之一…

Linux centos7安装nginx-1.24.0并且实现自启动

1.安装之前的操作 ps -ef|grep nginx 查看是否有运行 如果有就杀掉 kill -9 pid find / -name nginx 查看nginx文件 rm -rf file /usr/local/nginx* 通通删掉删掉 yum remove nginx 限载一下服务 1.2.下载安装包 地址 nginx: download 2.减压文件 tar…

学习笔记Day14:Linux下软件安装

软件安装 Anaconda 所有语言的包(package)、依赖(dependency)和环境(environment)管理器&#xff0c;类似应用商店 Conda < Miniconda < Anaconda&#xff08;有交互界面&#xff09; Linux下Miniconda即可 安装Miniconda 搜索北外/清华miniconda镜像网站&#xff…

【09】进阶JavaScript事件循环Promise

一、事件循环 浏览器的进程模型 何为进程? 程序运行需要有它自己专属的内存空间,可以把这块内存空间简单的理解为进程 每个应用至少有一个进程,进程之间相互独立,即使要通信,也需要双方同意。 何为线程? 有了进程后,就可以运行程序的代码了。 运行代码的「人」称之…

Linux信号处理

Linux信号处理 什么是linux信号 本质是一种通知机制&#xff0c;用户 or 操作系统通过发送一定的信号&#xff0c;通知进程&#xff0c;某些事情已经发生&#xff0c;你可以在后续进行处理。 信号产生是随机的&#xff0c;进程可能正在忙自己的事情&#xff0c;所以&#xf…

目标检测——PP-YOLOE-R算法解读

PP-YOLO系列&#xff0c;均是基于百度自研PaddlePaddle深度学习框架发布的算法&#xff0c;2020年基于YOLOv3改进发布PP-YOLO&#xff0c;2021年发布PP-YOLOv2和移动端检测算法PP-PicoDet&#xff0c;2022年发布PP-YOLOE和PP-YOLOE-R。由于均是一个系列&#xff0c;所以放一起解…

二、阅读器的开发(初始)-- 2、阅读器开发

1、epubjs核心工作原理 1.1 epubjs的核心工作原理解析 epub电子书&#xff0c;会通过epubjs去实例化一个Book对象&#xff0c;Book对象会对电子书进行解析。Book对象可以通过renderTo方法去生成一个Rendition对象&#xff0c;Rendition主要负责电子书的渲染&#xff0c;通过R…