概述

在Linux系统下,有很多命令可以查看文本文件的内容,如cat/tac/nl/more/less/head/tail等命令,当然还有vi/nano等文本编辑器。在这里,我只介绍其中自己常用的一部分命令和操作。

cat:从第一行开始显示全部的文本内容;

tac:从最后一行开始,显示全部分文本内容,与cat相反;

nl:显示文本时,可以输出行号;

more:按页显示文本内容;

less:与more差不多,也是按页显示文本内容,区别是less可以一行一行的回退,more回退只能一页一页回退;

head:从头开始显示文件指定的行数;

tail:显示文件指定的结尾的行数,但每一行的位置还是原文件中的位置,不会像tac那样与原文件相反。

vi: NB的Linux文本编辑器。

例子与说明

cat

  • cat demo.txt

    显示demo.txt文件全部内容
  • cat -b demo.txt

    显示demo.txt文件全部内容,非空的行输出行号,空行会输出,但不标记行号
  • cat -n demo.txt

    显示demo.txt文件全部内容,所有行都输出行号



    优点:简单

    缺点:当文本文件内容多于一页内容时,只能显示出最后一页的内容,无法看到前面的内容。

tac

  • tac demo.txt

    从最后一行开始,倒序输出demo.txt的内容。本人不常用。

nl

  • nl demo.txt

    显示文件内容,顺便输出行号,默认情况下空行不记录行号
  • nl -b a demo.txt
    • b a #空行也输出行号
    • b t #默认设置
    • n ln ##行号最左方显示
    • n rn ##行号最右方显示,且不加0(然并卵,我的机器上依然显示在左边)
    • n rz ##行号最右方显示,且加0(再次然并卵,但加了0了,如下图所示)
    • w ##设置行号字段占用的位数



      优点:貌似很灵活的样子

      缺点:就查看下内容,输出个行号而已,搞那么复杂有卵用。。。

more

  • more demo.txt

    • 按一下空格则往下翻一页
    • 按一下Enter则往下翻一行
    • 按一下B键往上翻一页
    • 不能往上一行一行的翻回去了
    • :f 可以显示文件名和现在的行数
    • q退出more

less

  • less demo.txt

    • more命令的所有按键less都支持
    • ↑↓箭头可以实现一行一行的上下翻
    • PageDown/PageUp可以实现一页一页的上下翻

head

  • head demo.txt

    默认只显示文件的前10行文本内容
  • head -n 6 demo.txt

    -n 6 参数指定显示文件的前6行
  • head -n -4 demo.txt

    -n -4 负数表示除去文件结尾的4行,其他的从头开始的所有行都显示出来

tail

  • tail demo.txt

    默认只显示从文件最后一行开始的10行文本内容
  • tail -n 5 demo.txt

    -n 5 参数指定显示文件的最后5行
  • tail -n -5 demo.txt

    **-n -5**tail命令不支持负数,执行结果同-n 5

vi

vi命令是使用VIM文本编辑器打开文本,VIM编辑器目前本人也是刚开始学习,只记住了一些简单的命令:

  • vi demo.txt 进入Normal模式查看文本
  • i 进入Insert模式插入内容,编辑文本
  • nG n代表行号,在Normal模式输入nG则定位到第n行
  • :set number 在Normal模式输入则显示文本行号,空行也会显示行号
  • ESC 退出Insert模式至Normal模式
  • :wq 在Normal模式下保存退出。w保存;q退出;可以单独使用

    就知道那么多了。希望以后能熟练使用VIM编辑器。

    关于VIM的入门,请参考我的另一篇博客:VIM编辑器操作命令积累

    陈皓老师的博客文章:VIM练级攻略

Linux中查看文本文件内容命令cat/tac/nl/more/less/head/tail/vi总结的更多相关文章

  1. Linux文件内容查阅 - cat, tac, nl, more, less, head, tail, od

    cat 由第一行开始显示文件内容 tac 从最后一行开始显示,可以看出 tac 是 cat 的倒著写! nl 显示的时候,顺道输出行号! more 一页一页的显示文件内容 less 与 more 类似 ...

  2. Linux 常用命令——cat, tac, nl, more, less, head, tail, od

    Drecik学习经验分享 转载请注明出处:http://blog.csdn.net/drecik__/article/details/8453584 1. cat 由第一行开始显示文件内容 2. ta ...

  3. Linux中查看日志文件的正确姿势,求你别tail走天下了!

    作为一个后端开发工程师,在Linux中查看查看文件内容是基本操作了.尤其是通常要分析日志文件排查问题,那么我们应该如何正确打开日志文件呢?对于笔者这种小菜鸡来说,第一反应就是 cat,tail,vi( ...

  4. 大数据之路week07--day04 (Linux 中查看文件内容的关键字处)

    Linux如何对文件内容中的关键字进行查找   如果是用vi打开文件后,在命令行下输入“/关键字” 如果是在没有打开文件的前提就用"cat 文件名 | grep "关键字" ...

  5. linux中一些简便的命令之tac/comm

    tac tac是cat的反写,即反序显示文件内容 如文件a.txt内容如下: 1 2 3 4 5 则tac a.txt打印如下: 54321 我们可以使用awk来实现tac的功能: awk '{arr ...

  6. 【Linux学习】Linux文件系统5—查看文件内容命令

    Linux文件系统5-查看文件内容命令 cat: 由第一行开始显示文件内容 more: 一页一页地显示文件内容,空格键可以继续翻页显示下一页内容 less:与more类似,但是可以往前翻页 head: ...

  7. Linux中查看socket状态(转)

    Linux中查看socket状态:cat /proc/net/sockstat #(这个是ipv4的) sockets: used 137 TCP: inuse 49 orphan 0 tw 3272 ...

  8. linux基础命令-文件查看类命令cat/tac/more/less/tail/head

    cat 查看文本文件内容 -b :给每一行编号不包括空白行 -n:给所有行编号 [root@host01 tmp]# cat -An /root/anaconda-ks.cfg # Kickstart ...

  9. Linux下查看进程的命令输出的内容解释

    Linux下查看进程的命令输出的内容解释 ps (process status) ps -e 或者ps -A (-e和-A完全一样) PID           TTY         TIME   ...

随机推荐

  1. JavaScript树(一) 简介

    树的相关术语 一个树结构包含一系列存在父子关系的节点. 每个节点都有一个父节点 (除了顶部的第一个节点)以及零个或多个子节点: 位于树顶部的节点叫作根节点(11) .它没有父节点.树中的每个元素都叫作 ...

  2. 解决将/etc/passwd文件中1000改为0后只能guest进入系统的问题 ||ubuntu下将普通用户权限升级为root用户权限的方法;

    其实我现在才知道linux系统对于用户权限管理比较严,在ubuntu下系统不允许root权限的用户进入图像界面系统.由于之前没弄过权限这个东西瞬间掉坑了了. 我是想修改一下root下的nginx.co ...

  3. MySQL · 引擎特性 · InnoDB 数据页解析

    前言 之前介绍的月报中,详细介绍了InnoDB Buffer Pool的实现细节,Buffer Pool主要就是用来存储数据页的,是数据页在内存中的动态存储方式,而本文介绍一下数据页在磁盘上的静态存储 ...

  4. 机器学习基石:Homework #0 SVD相关&常用矩阵求导公式

  5. Ubuntu系统安装Pyenv

    安装Pyenv curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | ...

  6. codeforces 868A Bark to Unlock

    As technologies develop, manufacturers are making the process of unlocking a phone as user-friendly ...

  7. APIO 2015

    老师让我们打这套题练练手.感觉这套题还是挺有意思的,比国内某些比赛不知道高到哪里去.最后我拿了284/300,貌似比赛是IOI赛制啊,强行被当成OI赛制做了,不然我T3可能还能多骗点. T1.scul ...

  8. 抽象方法不能是static或native或synchroniz

    abstract 是抽象了,只有声明,没有具体的实现方法 static是静态的,是一种属于类而不属于对象的方法或者属性,而我们知道,类其实也是一个对象,他是在class文件加载到虚拟机以后就会产生的对 ...

  9. C++变量和基本类型——2.3.1引用

    引用:为对象起了另外一个名字,通常将申明符写成&d的形式来定义引用类型,其中d是申明的变量名: int ival =1024; int &refVal=ival 一般在初始化变量时,初 ...

  10. PostgreSQL 中如何实现group_concat

    之前在MySQL中使用group_concat,觉得超级好用. 今天在PostgreSQL需要用到这样的场景,就去学习了一下. 在PostgreSQL中提供了arr_agg的函数来实现聚合,不过返回的 ...