• Linux学习笔记08linux文本处理(cat命令、more命令、head命令、tail命令)


    1.cat命令:连接文件并打印输出到标准输出设备

    cat 命令可以用来显示文本文件的内容,也可以把几个文件内容附加到另一个文件中,即连接合并文件。

    cat 是 concatenate(连接、连续)的简写。

    cat 命令的基本格式如下:

    [root@localhost ~]# cat [选项] 文件名
    或者
    [root@localhost ~]# cat 文件1 文件2 > 文件3

      这两种格式中,前者用于显示文件的内容,常用选项及各自的含义如表 1 所示;而后者用于连接合并文件。

    表 1 cat 命令常用选项及含义
    选项含义
    -A 相当于 -vET 选项的整合,用于列出所有隐藏符号;
    -E 列出每行结尾的回车符 $;
    -n 对输出的所有行进行编号;
    -b 同 -n 不同,此选项表示只对非空行进行编号。
    -T 把 Tab 键 ^I 显示出来;
    -V 列出特殊字符;
    -s 当遇到有连续 2 行以上的空白行时,就替换为 1 行的空白行。

    注意,cat 命令用于查看文件内容时,不论文件内容有多少,都会一次性显示。如果文件非常大,那么文件开头的内容就看不到了。不过 Linux 可以使用PgUp+上箭头组合键向上翻页,但是这种翻页是有极限的,如果文件足够长,那么还是无法看全文件的内容。

    因此,cat 命令适合查看不太大的文件。

    案例1:cat 命令本身非常简单,我们可以直接查看文件的内容。

     案例2:将文件 file1.txt 和 file2.txt 的内容合并后输出到文件 file3.txt 中。

    [lucky@localhost lucky3344]$ cat file1 file2 >file3
    [lucky@localhost lucky3344]$ more file3
    linda in file1
    jack in file2
    [lucky@localhost lucky3344]$ 

     2. more命令:分屏显示文件内容

    more 命令可以分页显示文本文件的内容,使用者可以逐页阅读文件中内容,此命令的基本格式如下:

    [root@localhost ~]# more [选项] 文件名

    more 命令比较简单,一般不用什么选项,对于表 1 中所列的选项,读者只需看到认识即可。

    表 1 more 命令选项及含义
    选项含义
    -f 计算行数时,以实际的行数,而不是自动换行过后的行数。
    -p 不以卷动的方式显示每一页,而是先清除屏幕后再显示内容。
    -c 跟 -p 选项相似,不同的是先显示内容再清除其他旧资料。
    -s 当遇到有连续两行以上的空白行时,就替换为一行的空白行。
    -u 不显示下引号(根据环境变量 TERM 指定的终端而有所不同)。
    +n 从第 n 行开始显示文件内容,n 代表数字。
    -n 一次显示的行数,n 代表数字。

    more 命令的执行会打开一个交互界面,因此读者有必要了解一些交互命令,常用的交互命令如表 2 所示。

    表 2 more 命令交互指令及功能
    交互指令功能
    h 或 ? 显示 more 命令交互命令帮助。
    q 或 Q 退出 more。
    v 在当前行启动一个编辑器。
    :f 显示当前文件的文件名和行号。
    !<命令> 或 :!<命令> 在子Shell中执行指定命令。
    回车键 向下移动一行。
    空格键 向下移动一页。
    Ctrl+l 刷新屏幕。
    = 显示当前行的行号。
    ' 转到上一次搜索开始的地方。
    Ctrf+f 向下滚动一页。
    . 重复上次输入的命令。
    / 字符串 搜索指定的字符串。
    d 向下移动半页。
    b 向上移动一页。

    案例1:用分页的方式显示 file3文件的内容

    [lucky@localhost lucky3344]$ more -5 file3
    linda in file1
    jack in file2
    11
    22
    33
    --More--(41%)

     3.head命令:显示文件开头的内容

     head 命令可以显示指定文件前若干行的文件内容,其基本格式如下:
    [root@localhost ~]# head [选项] 文件名

    该命令常用选项以及各自的含义,如表 1 所示。

    表 1 head 命令常用选项及含义
    选项含义
    -n K 这里的 K 表示行数,该选项用来显示文件前 K 行的内容;如果使用 "-K" 作为参数,则表示除了文件最后 K 行外,显示剩余的全部内容。
    -c K 这里的 K 表示字节数,该选项用来显示文件前 K 个字节的内容;如果使用 "-K",则表示除了文件最后 K 字节的内容,显示剩余全部内容。
    -v 显示文件名;

    注意,如不设置显示的具体行数,则默认显示 10 行的文本数据。

    head 命令默认显示文件的开头 10 行内容。如果想显示指定的行数,则只需使用 "-n" 选项即可,例如:

    案例1:显示文件的开头 8 行内容

    [lucky@localhost lucky3344]$ head -n 8 file3
    linda in file1
    jack in file2
    11
    22
    33
    44
    55
    66
    [lucky@localhost lucky3344]$ 

     4. tail命令:显示文件结尾的内容

    tail 命令和 head 命令正好相反,它用来查看文件末尾的数据,其基本格式如下:

    [root@localhost ~]# tail [选项] 文件名

    此命令常用的选项及含义如表 1 所示。

    表 1 tail 命令选项及含义
    选项含义
    -n K 这里的 K 指的是行数,该选项表示输出最后 K 行,在此基础上,如果使用 -n +K,则表示从文件的第 K 行开始输出。
    -c K 这里的 K 指的是字节数,该选项表示输出文件最后 K 个字节的内容,在此基础上,使用 -c +K 则表示从文件第 K 个字节开始输出。
    -f

    输出文件变化后新增加的数据。

    案例1:显示文件的结尾 8 行内容

    [lucky@localhost lucky3344]$ tail  -n 8 file3
    222
    333
    444
    555
    666
    777
    888
    999
    [lucky@localhost lucky3344]$ 

     

  • 相关阅读:
    PAT顶级 1024 Currency Exchange Centers (35分)(最小生成树)
    Codeforces 1282B2 K for the Price of One (Hard Version)
    1023 Have Fun with Numbers (20)
    1005 Spell It Right (20)
    1092 To Buy or Not to Buy (20)
    1118 Birds in Forest (25)
    1130 Infix Expression (25)
    1085 Perfect Sequence (25)
    1109 Group Photo (25)
    1073 Scientific Notation (20)
  • 原文地址:https://www.cnblogs.com/luckyplj/p/15654789.html
Copyright © 2020-2023  润新知