一分钟学一个 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常用命令,坚持每 ...
随机推荐
- Linux配置为代理服务器,代理微信
1.安装squid(全程使用root账号,如使用其他请注意权限问题) yum install squid 2.生成代理的账号密码 #如果没有htpasswd命令 先安装sudo yum install ...
- CentOS 7 更改内网 IP
打开网络配置文件 vim /etc/sysconfig/network-scripts/ifcfg-em2 修改配置文件如下 TYPE=Ethernet PROXY_METHOD=none BROWS ...
- JSON.parse 函数 (JavaScript)
将 JavaScript 对象表示法 (JSON) 字符串转换为对象. 语法 参数 返回值 异常 以下示例使用 JSON.parse 将 JSON 字符串转换成对象. var jsontext = ' ...
- 【Vue项目】尚品汇(四)Search组件开发
Search模块开发 分析:1)编写静态页面 2)编写api 3)编写vuex三大件 4)组件获取仓库数据,并进行动态展示 1 SearchSelector 1 编写api export const ...
- Vue中Key值的一些问题
1. Vue里面的key是一个特殊的变量,在元素当中是不体现出来的 2. 在解析成虚拟DOM的是,如果我们没有写key值,那么这个key就类似于下标 0 , 1 , 2 , 3.... 3. 使用列表 ...
- RDIFramework.NET Web版报表管理-助力企业高效智能图表
功能描述 在RDIFramework.NET Web版本中全新的报表管理功能模块,非常实用的功能,重量级推荐.主要用于对日常常用的报表做定制展示.可以自动发布到模块(就可授权给指定资源访问),在报表定 ...
- Docker应用部署(Nginx、Tomcat)
Docker hub官方链接: https://hub.docker.com 部署Nginx 官方已经给出了方法: https://hub.docker.com/_/nginx 运行容器 $ dock ...
- 如何通过C#/VB.NET 代码调整PDF文档的页边距
PDF边距是页面主要内容区域和页面边缘之间的距离.与Word页边距不同,PDF文档的页边距很难更改.因为Adobe没有提供操作页边距的直接方法.但是,您可以通过缩放页面内容来改变页边距.本文将介绍如何 ...
- uniapp小程序开发准备工作
1.下载HbuilderX HBuilderX官网:https://www.dcloud.io/hbuilderx.html 下载正式版--下载完后解压--双击打开HBuilderX.exe文件就可以 ...
- 记一道国际赛CTF web题
这是一篇关于打d3ctf坐牢,无奈去打国际赛的题解. TAMUCTF [Blackbox] 首先打开页面,然后发现一个登陆框 刚开始最先想到就是弱口令登陆,尝试几个后发现登陆不进去. 之后我就换了一个 ...