一分钟学一个 Linux 命令 - cat 和 tail
前言
大家好,我是 god23bin。今天我给大家带来的是 Linux 命令系列,每天只需一分钟,记住一个 Linux 命令不成问题。今天,需要你花费两分钟时间,因为我们要介绍的是两个常用的查看文件内容的命令:cat 和 tail 命令。
cat
什么是 cat 命令?
cat 命令源自于 concatenate files and print 这个词组,意思为「连接文件并输出」。
cat 命令用于连接一个或多个文件,并将结果输出到终端或其他文件,这样我们就能在终端直接看到输出的内容。cat 命令适合查看内容较少、纯文本的文件。
如何使用 cat 命令?
cat 命令的使用非常简单。你只需在终端中输入 cat,并指定要连接的文件名。
基本语法:
cat [选项参数] 文件名
如果想要同时查看多个文件的话,那么可以这样:
cat 文件名1, 文件名2
这样就能将这两个文件连接起来了,并输出到终端。
举例说明
假设我们在 /opt/games/gta6 目录下,现在有一个 show.txt 的文本文件,我们想查看该文件的内容,那么可以在终端输入以下命令:
cat show.txt
这将在终端中显示 show.txt 文件的内容。

常用选项参数
-n(--number):显示行号。-b(--number-nonblank):显示行号,空行没有行号。-s(--squeeze-blank):显示行号,多个空行压缩合并成一行,显示空行行号。-T(--show-tabs):在文件中显示制表符(将 TAB 字符显示为^I符号)
例子
cat某个文件的同时显示行号:
cat -n show.txt

cat某个文件的同时显示行号,空行不显示行号:
cat -b show.txt

cat某个文件的同时显示行号,多个空行合并成一行显示行号:
这里我修改 show.txt 的内容,多加上几个空行,接着使用 -s 命令输出内容。
cat -s show.txt

- 显示在文件中的制表符:
cat -T show.txt
这将在文件中的制表符位置显示 ^I 符号。

清空指定文件内容
我们可以借助「空设备文件」和「输出重定向操作符」,清空指定文件的内容。
cat /dev/null > show.txt
此时再 cat show.txt 就看不到任何内容了。

写入内容到文件
借助「输出重定向操作符」写入内容到指定的文件,遇到 EOF 中止符后才结束写入并保存。
cat > show.txt << EOF

tail
什么是 tail 命令?
tail 的意思就是「尾部、尾巴」,顾名思义,该命令用于显示文件的尾部内容,默认会显示指定文件的末尾 10 行的内容。
tail 命令通常用于查看日志文件或实时监控日志文件的更新。
如何使用 tail 命令?
使用 tail 命令非常简单。你只需在终端中输入 tail,并指定要查看内容的文件名。
基本语法:
tail [选项参数] 文件名
同样,tail 也可以指定多个文件,如果指定了多个文件,那么会在显示的每个文件内容前面加上文件名来加以区分。
举例说明
依旧在 /opt/games/gta6 目录下,现在有一个 readme.txt 的文本文件,我们想查看该文件的尾部内容,那么可以在终端输入以下命令:
tail readme.txt

默认输出显示 10 行的尾部内容。
指定多个文件:
tail show.txt readme.txt

常用选项参数
-n:指定要显示的尾部行数。-f:(follow)持续跟踪显示文件尾部最新的内容,比如你查看日志文件的时候,当日志发生变化,就能实时看到日志的输出显示。
例子
- 指定显示文件尾部 20 行的内容
tail -n 20 readme.txt

- 持续跟踪文件尾部最新内容
tail -f sys-user.log
一般这样就会跟踪 sys-user.log 日志文件的尾部最新的内容,我们就能看到会持续输出的日志。
不过,目前这样只能输出尾部 10 行的内容,跟踪也只能看 10 行,我们想看更多行怎么办呢?一般在查看日志的时候,日志的输出是比较多的,我一般是跟踪 1000 行,那么可以在终端输入:
tail -1000f sys-user.log
这样,就能够指定跟踪尾部最新的 1000 行的内容了!
总结
现在,相信聪明的你已经掌握了这两个命令了!你可以开始在终端中尝试使用 cat 和 tail 命令,自己捣鼓玩玩!掌握 cat 和 tail 命令的基本用法和常见选项参数,将使我们更加高效地查看相关文件的内容。
这里需要注意的是这两个命令都有 -n 参数,cat 的 -n 是用来显示行号的,而 tail 的 -n 是用来指定显示多少行的。
最后的最后
希望各位屏幕前的靓仔靓女们给个三连!你轻轻地点了个赞,那将在我的心里世界增添一颗明亮而耀眼的星!
咱们下期再见!
一分钟学一个 Linux 命令 - cat 和 tail的更多相关文章
- 一天学一个Linux命令:第一天 ls
文章更新于:2020-03-02 注:本文参照 man ls 手册,并给出使用样例. 文章目录 一.命令之`ls` 1.名字及介绍 2.语法格式 3.输出内容示例 4.参数 二.命令实践 1.`ls ...
- 一天学一个Linux命令:第二天 cd pwd
文章更新于:2020-03-08 注:本文参照 man pwd 手册,并给出使用样例. 文章目录 一.命令之 `cd` 和 `pwd` 1.命令介绍 2.语法格式 3.使用样例 4.pwd 参数 5. ...
- 每天一个linux命令(1):tail 命令
tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新, ...
- 【转载】每天一个Linux命令
目 录 每天一个linux命令(1) : ls 命令 每天一个linux命令(2) : cd 命令 每天一个linux命令(3) : pwd 命令 每天一个linux命令(4) : mkdi ...
- 2018/03/07 每日一个Linux命令 之 cat
每日一个Linux命令 2018-03-07 Linux 命令 cat cat [-参数] fileName 在之前的Linux使用中 cat 命令一直作为文本输出指令来使用,很少可以深入学习的该命令 ...
- 每天一个linux命令:cat(10)
cat cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用 注意:当文件较大时,文本在屏幕上迅速 ...
- 每天一个 Linux 命令(21):find命令之xargs
在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...
- 每天一个linux命令目录
出处:http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每 ...
- 每天一个linux命令-转载
每天一个linux命令目录 转载自: http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令 ...
- [转]每天一个linux命令目录
[转]每天一个linux命令目录 http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每 ...
随机推荐
- 算法总结--ST表
声明(叠甲):鄙人水平有限,本文为作者的学习总结,仅供参考. 1. RMQ 介绍 在开始介绍 ST 表前,我们先了解以下它以用的场景RMQ问题.RMQ (Range Minimum/Maximum Q ...
- 一文详解扩散模型:DDPM
作者:京东零售 刘岩 扩散模型讲解 前沿 人工智能生成内容(AI Generated Content,AIGC)近年来成为了非常前沿的一个研究方向,生成模型目前有四个流派,分别是生成对抗网络(Gene ...
- vue2双向绑定原理及源码解析
首先我们要知道VUE实现双向绑定的步骤是什么: 实现一个监听器 Observer 对数据对象进行遍历,包括子属性对象的属性,利用 Object.defineProperty() 对属性都加上 sett ...
- ES5新增数组常见方法(indexof/forEach/map/filter)
新增的数组常见方法:以下说明中,红色为必选参数,蓝色为可选参数 1.indexOf(data,start); 用于返回某个数组或者字符串中规定字符或者字符串的位置: var arr = [" ...
- 用Abp实现双因素认证(Two-Factor Authentication, 2FA)登录(一):认证模块
@ 目录 原理 用户验证码校验模块 双因素认证模块 改写登录 在之前的博文 用Abp实现短信验证码免密登录(一):短信校验模块 一文中,我们实现了用户验证码校验模块,今天来拓展这个模块,使Abp用户系 ...
- Oracle AUD审计 找出锁定用户的客户端IP
问题描述:运用AUD审计找出锁定用户的客户端IP 1.查询被锁用户 SELECT USERNAME, ACCOUNT_STATUS, LOCK_DATE FROM DBA_USERS WHERE AC ...
- Go For Web:一篇文章带你用 Go 搭建一个最简单的 Web 服务、了解 Golang 运行 web 的原理
前言: 本文作为解决如何通过 Golang 来编写 Web 应用这个问题的前瞻,对 Golang 中的 Web 基础部分进行一个简单的介绍.目前 Go 拥有成熟的 Http 处理包,所以我们去编写一个 ...
- 记一次 .NET某医疗器械清洗系统 卡死分析
一:背景 1. 讲故事 前段时间协助训练营里的一位朋友分析了一个程序卡死的问题,回过头来看这个案例比较经典,这篇稍微整理一下供后来者少踩坑吧. 二:WinDbg 分析 1. 为什么会卡死 因为是窗体程 ...
- prometheus node-exporter安装
目录 prometheus node-exporter安装 包安装在linux服务器 Daemonset安装 Docker安装 helm安装 prometheus node-exporter安装 安装 ...
- AI降临,前端启用面壁计划
作者:京东零售 郑炳懿 开篇: "在我们有生之年,你觉得会看到AI兵临城下的那一天吗?就像电影黑客帝国里面演的一样",Barry从红色的烟盒里取出一根烟发问道. "不可能 ...