前言

大家好,我是 god23bin。今天我给大家带来的是 Linux 命令系列,每天只需一分钟,记住一个 Linux 命令不成问题。今天,需要你花费两分钟时间,因为我们要介绍的是两个常用的查看文件内容的命令:cattail 命令。

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 符号)

例子

  1. cat 某个文件的同时显示行号:
cat -n show.txt

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

  1. cat 某个文件的同时显示行号,多个空行合并成一行显示行号:

这里我修改 show.txt 的内容,多加上几个空行,接着使用 -s 命令输出内容。

cat -s show.txt

  1. 显示在文件中的制表符:
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)持续跟踪显示文件尾部最新的内容,比如你查看日志文件的时候,当日志发生变化,就能实时看到日志的输出显示。

例子

  1. 指定显示文件尾部 20 行的内容
tail -n 20 readme.txt

  1. 持续跟踪文件尾部最新内容
tail -f sys-user.log

一般这样就会跟踪 sys-user.log 日志文件的尾部最新的内容,我们就能看到会持续输出的日志。

不过,目前这样只能输出尾部 10 行的内容,跟踪也只能看 10 行,我们想看更多行怎么办呢?一般在查看日志的时候,日志的输出是比较多的,我一般是跟踪 1000 行,那么可以在终端输入:

tail -1000f sys-user.log

这样,就能够指定跟踪尾部最新的 1000 行的内容了!

总结

现在,相信聪明的你已经掌握了这两个命令了!你可以开始在终端中尝试使用 cattail 命令,自己捣鼓玩玩!掌握 cattail 命令的基本用法和常见选项参数,将使我们更加高效地查看相关文件的内容。

这里需要注意的是这两个命令都有 -n 参数,cat-n 是用来显示行号的,而 tail-n 是用来指定显示多少行的。

最后的最后

希望各位屏幕前的靓仔靓女们给个三连!你轻轻地点了个赞,那将在我的心里世界增添一颗明亮而耀眼的星!

咱们下期再见!

一分钟学一个 Linux 命令 - cat 和 tail的更多相关文章

  1. 一天学一个Linux命令:第一天 ls

    文章更新于:2020-03-02 注:本文参照 man ls 手册,并给出使用样例. 文章目录 一.命令之`ls` 1.名字及介绍 2.语法格式 3.输出内容示例 4.参数 二.命令实践 1.`ls ...

  2. 一天学一个Linux命令:第二天 cd pwd

    文章更新于:2020-03-08 注:本文参照 man pwd 手册,并给出使用样例. 文章目录 一.命令之 `cd` 和 `pwd` 1.命令介绍 2.语法格式 3.使用样例 4.pwd 参数 5. ...

  3. 每天一个linux命令(1):tail 命令

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

  4. 【转载】每天一个Linux命令

    目  录 每天一个linux命令(1)  : ls 命令 每天一个linux命令(2)  : cd 命令 每天一个linux命令(3)  : pwd 命令 每天一个linux命令(4)  : mkdi ...

  5. 2018/03/07 每日一个Linux命令 之 cat

    每日一个Linux命令 2018-03-07 Linux 命令 cat cat [-参数] fileName 在之前的Linux使用中 cat 命令一直作为文本输出指令来使用,很少可以深入学习的该命令 ...

  6. 每天一个linux命令:cat(10)

    cat cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用 注意:当文件较大时,文本在屏幕上迅速 ...

  7. 每天一个 Linux 命令(21):find命令之xargs

    在使用 find命令的-exec选项处理匹配到的文件时, find命令将所有匹配到的文件一起传递给exec执行.但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出 ...

  8. 每天一个linux命令目录

    出处:http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每天一个命令,所以这个系列为每 ...

  9. 每天一个linux命令-转载

    每天一个linux命令目录 转载自: http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html   开始详细系统的学习linux常用命令 ...

  10. [转]每天一个linux命令目录

    [转]每天一个linux命令目录 http://www.cnblogs.com/peida/archive/2012/12/05/2803591.html 开始详细系统的学习linux常用命令,坚持每 ...

随机推荐

  1. 实现一个CRDT工具库——PNCounter

    PNCounter 这段代码实现了一个PNCounter,即正负计数器.PNCounter是基于GCounter实现的,GCounter是一个只增不减的计数器,而PNCounter则是在GCounte ...

  2. Object 通用方法

    Object 通用方法 概览 public final native Class<?> getClass() public native int hashCode() public boo ...

  3. Knockin' On PHP's Door ---PHP入门必知(持续更新)

    1.->.=> 和 :: 区别: ::   类中调用静态方法时用->  类中调用属性和非静态方法=> 是键值对,比如在关联数组中用 $arr = ["name&quo ...

  4. Flask快速入门day02(1、CBV使用及源码分析,2、模板用法,3、请求与响应的基本用法,4、session的使用及源码分析,5、闪现,6、请求扩展)

    目录 Flask框架 一.CBV分析 1.CBV编写视图类方法 二.CBV源码分析 1.CBV源码问题 2.补充问题 3.总结 三.模板 1.py文件 2.html页面 四.请求与响应 1.reque ...

  5. [Java]变量及其初始化 与 类对象的初始化

    1 变量 1.1 变量的[定义] 1.2 变量的[作用域] 1.3 变量的[初始值] 1.4 补充:缓存变量 1.5 变量的[分类]与[未初始化情况] 2 类对象 2.1 类对象的初始化/构造过程 1 ...

  6. Java 生成海报

    最近项目有个功能是生成海报 一个背景图片,一个二维码图片 将两个图片合并成一个图片. 写了一个工具类,需要的朋友自取. 1 @Component 2 public class PictureUtil ...

  7. 【Spring5】数据库事务操作

    Spring针对事务的操作 事务的概念:事务是数据库最基本的单元,逻辑上的一组操作,要么都成功,如果有一个操作失败则都失败. 事务的特性:ACID 原子性.一致性.隔离性.持久性 JavaEE环境三层 ...

  8. Django 如何使用 Celery 完成异步任务或定时任务

    以前版本的 Celery 需要一个单独的库(django-celery)才能与 Django 一起工作, 但从 Celery 3.1 开始,情况便不再如此,我们可以直接通过 Celery 库来完成在 ...

  9. Typora 隐藏侧边栏图片文件夹

    前言 在使用 Typora 的时候,我将图片的保存路径设置为了如下所示: 这样设置是为了更方便的管理笔记中的图片,但图片文件夹却也显示在了侧边栏中,随着笔记增多,我的侧边栏越来越乱... 难道要忍气吞 ...

  10. RTSP Server(LIVE555)源码分析(二)-服务器创建

    一. 设置RTSP服务器配置 步骤1.5:rtspServer_Init--->BasicTaskScheduler::createNew()时序图如下: 1)步骤1.54,BasicTaskS ...