您的位置:首页 > 运维架构 > Linux

Linux中查看文本文件内容命令cat/tac/nl/more/less/head/tail/vi总结

2017-06-18 15:43 1021 查看

概述

在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练级攻略
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: