• #Linux学习笔记# Linux系统查看文件内容的命令


    1.cat

    连结多个文件的内容并显示在屏幕上;如果没有指定文件或文件名为“-”,则读取标准输入。语法如下:

        cat [option] ... [file] ...

    常用的选项有:

        选项-n:编号所有行。

        选项-b:编号非空行。

        选项-A:显示所有内容,包括特殊字符。

    示例:

        读取标准输入直接打印到标准输出中(Ctrl+c退出),

    lienhua34@~$ cat
    hello
    hello
    world
    world
    ^C
    lienhua34@~$ 

    如果结合重定向,那么我们就可以将从标准输入读取内容并写入到指定文件中。例如下面读取标准输入的内容,并写入到文件test中(Ctrl+c终止),然后通过cat test来查看文件内容。

    lienhua34@~$ cat > test
    hello world
    ^C
    lienhua34@~$ cat test
    hello world
    lienhua34@~$ 

    如果cat命令后面有多个文件,则一次读取每个文件的内容并拼接在一起。

    lienhua34@~$ cat test1
    line1 in test1
    line2 in test1
    lienhua34@~$ cat test2
    line1 in test2
    line2 in test2
    lienhua34@~$ cat test1 test2
    line1 in test1
    line2 in test1
    line1 in test2
    line2 in test2
    lienhua34@~$ cat test2 test1
    line1 in test2
    line2 in test2
    line1 in test1
    line2 in test1
    lienhua34@~$ 
    View Code

     2.tac

    该命令是cat的反向命令,功能同cat命令,不过其是反向读取每个文件内容(即从最后一行向第一行)。

    lienhua34@~$ cat test1
    line1 in test1
    line2 in test1
    lienhua34@~$ cat test2
    line1 in test2
    line2 in test2
    lienhua34@~$ tac test1 test2
    line2 in test1
    line1 in test1
    line2 in test2
    line1 in test2
    lienhua34@~$ 

     3.more

    cat命令读取文件所有内容并都打印到标准输出中。但存在以下两个问题,

        (1)如果文件内容超过一屏,我们还需要向上滚动屏幕来查看文件开头的内容。     

        (2Terminal显示的行数是固定,如果文件内容太多,使用cat可能导致我们无法看到文件最开始的内容。

    more命令可以解决上述问题。more命令每次只显示一屏的内容,然后通过命令来控制向上或向下滚屏,或者进行搜索。如下图所示,

    $ more tty.js

     

    控制命令,

        空格:向下滚动一屏;

        回车键:向下滚动一行;

        b:向上滚动一屏;

        q:退出查看;

        =:查看当前行数;

        /pattern:查找模式pattern

    more命令选项,

        -num:控制more每屏显示多少行,例如-3表示每滚动一屏显示3行;

        -d:在Terminal下端显示控制命令提示;

        +num:从第几行开始显示;

    更多关于more命令的使用请参考man more

    4.less

    less命令是more命令的加强版。不过其在开始之前并没有完全读取文件的内容,这样在打开超大文件时超快。less综合了morevi的控制命令。

     

    更多关于less的使用请参考man less

    5.head

    显示文件的开头部分内容。语法:

        head [option] ... [file] ...

    默认显示文件开始10行,可以通过选项来控制,

        -c, --bytes=[-]K:显示文件的开始K个字节内容。如果K前面加“-,则表示除了文件末尾k个字节内容,文件其他内容全部显示。

        -n, --lines=[-]K:显示文件的开始K行内容。如果K前面加”-“,则表示除了末尾K行,文件其他内容全部显示。

    示例:

    显示文件开始5行,

    lienhua34@lib$ head -n 5 config.js 
    /**
     * tty.js: config.js
     * Copyright (c) 2012-2014, Christopher Jeffrey (MIT License)
     */
    
    lienhua34@lib$ 

    如果指定了多个文件,则显示每个文件的内容之前将会打印出文件名,

    lienhua34@lib$ head -n 3 config.js tty.js 
    ==> config.js <==
    /**
     * tty.js: config.js
     * Copyright (c) 2012-2014, Christopher Jeffrey (MIT License)
    
    ==> tty.js <==
    /**
     * tty.js
     * Copyright (c) 2012-2014, Christopher Jeffrey (MIT License)
    lienhua34@lib$ 

    更详尽的关于head的介绍请参考man head

    6.tail

    显示文件的末尾部分内容。语法:

        tail [option] ... [file] ...

    默认显示文件开始10行,可以通过选项来控制,

        -c, --bytes=[+]K:显示文件的开始K个字节内容。如果K前面加+”,则表示从文件开头第K个字节开始全部显示。

        -n, --lines=[+]K:显示文件的开始K行内容。如果K前面加+“,则表示从文件开头第K行开始全部显示。

    示例:

    显示文件末尾5行,

    lienhua34@lib$ tail -n 5 config.js 
      ensure: ensure,
      clone: clone
    };
    
    merge(exports, exports.helpers);
    lienhua34@lib$ 

    如果指定了多个文件,则显示每个文件的内容之前将会打印出文件名,

    lienhua34@lib$ tail -n 3 config.js tty.js 
    ==> config.js <==
    };
    
    merge(exports, exports.helpers);
    
    ==> tty.js <==
    exports.createServer = Server;
    
    module.exports = exports;
    lienhua34@lib$

    更详尽的关于tail的介绍请参考man tail。

    (done)

  • 相关阅读:
    SpringCloudAlibaba学习笔记-简介
    SpringCloudAlibaba学习笔记-目录
    go语言学习笔记-目录
    go语言学习笔记-配置idea开发go编程语言并配置导入本地包
    go语言学习笔记-Windows10开发环境安装和环境变量配置
    我与阿里云的日常-QuickBI开发教程
    我与阿里云的日常-阿里云帐号注册
    消息队列 RabbitMq(6)高级特性
    消息队列 (5) RabbtMQ SpringBoot整合
    Nginx的安装和使用
  • 原文地址:https://www.cnblogs.com/lienhua34/p/5021304.html
Copyright © 2020-2023  润新知