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@~$

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)如果文件内容超过一屏,我们还需要向上滚动屏幕来查看文件开头的内容。

(2)Terminal显示的行数是固定,如果文件内容太多,使用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综合了more和vi的控制命令。

更多关于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  config.js
/**
* tty.js: config.js
* Copyright (c) 2012-2014, Christopher Jeffrey (MIT License)
*/ lienhua34@lib$

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

lienhua34@lib$ head -n  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  config.js
ensure: ensure,
clone: clone
}; merge(exports, exports.helpers);
lienhua34@lib$

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

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

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

(done)

#Linux学习笔记# Linux系统查看文件内容的命令的更多相关文章

  1. linux学习笔记(1)-文件处理相关命令

    列出文件和目录 ls (list) #ls 在终端里键入ls,并回车,就会列出当前目录的文件和目录,但是不包括隐藏文件和目录 #ls -a 列出当前目录的所有文件 #ls -al 列出当前目的所有文件 ...

  2. Linux学习笔记:wc查看文件字节数、字数、行数

    Linux系统中的wc(Word Count)命令可以统计指定文件中的字节数.字数.行数,并将统计结果显示输出. 若不指定文件名称,或是所给予的文件名为“-”,则wc指令会从标准输入设备读取数据. 语 ...

  3. Linux学习笔记-Linux系统简介

    Linux学习笔记-Linux系统简介 UNIX与Linux发展史 UNIX是父亲,Linux是儿子. UNIX发行版本 操作系统 公司 硬件平台 AIX IBM PowerPC HP-UX HP P ...

  4. Linux 基础——查看文件内容的命令

    第四天,继续学习.今天看到一句话,"你以为你以为的就是你以为的吗?",这句话还是有点意思啊!!! 一.查看文件内容的命令 file dest:查看文件的类型.在Linux中,文件的 ...

  5. Linux下查看文件内容的命令

    查看文件内容的命令: cat     由第一行开始显示内容,并将所有内容输出 tac     从最后一行倒序显示内容,并将所有内容输出 more    根据窗口大小,一页一页的现实文件内容 less ...

  6. Linux学习笔记(二)——文件/目录/VIM

    文件和目录管理 及 VI编辑器的使用 文件和目录管理,刚开始学这块的时候感觉内容很多很杂,但是学完进行总结后,发现其实很有条理的而且没什么难度,只是熟练掌握这些常用的命令就行了.至于Vim编辑器,不得 ...

  7. Linux 查看文件内容的命令

    转载自:新浪博客 (观看档案内容 : cat, tac, more, less, head, tail, nl, 刚刚我们提到的都只是在于显示档案的外观,或者是移动与复制一个档案或目录而已,那么如果我 ...

  8. Linux下查看文件内容的命令和工具

    1.catcat命令主要用来查看文件内容,创建文件,合并文件,追加文件等. 1.1.查看文件 格式:cat 文件名称 说明:这条命令会把文件内容全部输出到显示屏上. cat -n 文件名称:查看文件内 ...

  9. Linux学习笔记(二)文件操作命令

    文件操作命令 touch stat cat more less head tail ln touch 英文原意: change file timestamps 功能: 修改文件的时间戳 语法: tou ...

随机推荐

  1. Linux Shell 06 数学运算

    1.let let "var+=1" let v2= echo $var,$v2 #2,4 a.只支持整数运算 b.基本支持所有运算符(包括++,——,**) c.表达式中使用变量 ...

  2. Eclipse如何安装JD-Eclipse反编译插件

    一.Eclipse在线安装JD-Eclipse反编译插件 1.在eclipse的help—>Install New Software...中添加新软件开发,添加它的源: name:jd-ecli ...

  3. Node.js的模块载入方式与机制

    Node.js中模块可以通过文件路径或名字获取模块的引用.模块的引用会映射到一个js文件路径,除非它是一个Node内置模块.Node的内置模块公开了一些常用的API给开发者,并且它们在Node进程开始 ...

  4. python singleton

    方法一:用元类的方式实现一个singleton. liuxiaoyan@development:~/mysite$ cat Singleton.py class Singleton(type): &q ...

  5. 在EntityFramework6中执行SQL语句

    在EntityFramework6中执行SQL语句 在上一节中我介绍了如何使用EF6对数据库实现CRDU以及事务,我们没有写一句SQL就完成了所有操作.这一节我来介绍一下如何使用在EF6中执行SQL语 ...

  6. [转]通过AngularJS directive对bootstrap日期控件的的简单包装

    本文转自:http://www.cnblogs.com/Benoly/p/4109460.html 最近项目上了AngularJS,而原来使用的日期控件的使用方式也需要改变,于是开始了倒腾,看了官方的 ...

  7. Mecanim的Avater

    角色共用同一套动作原理 先说说为什么不同的角色可以共用同一套动作:因为导入之后,我们需要为它们每一个模型都创建一个Avater,而Avater里存储了骨骼的蒙皮信息(创建Avater时把三维软件里的蒙 ...

  8. MySQL的重装问题解决方法

    最近在工作上遇到了在Windows环境中将MySQL重装的问题,今天记录一下我的解决过程. 首先因为某些原因,我不得不把mysql卸载,然后重装,不论我用控制面板的卸载删除程序方式还是安全卫士的卸载, ...

  9. java 14 -7 Date

    Date:表示特定的瞬间,精确到毫秒. 了解了解就行. 已经过时,在 JDK 1.1 之前,类 Date 有两个其他的函数.它允许把日期解释为年.月.日.小时.分钟和秒值.它也允许格式化和解析日期字符 ...

  10. 搭建一个Web应用

    因为EasyUI会涉及到与后台数据的交互,所以使用Spring MVC作为后台,搭建一个完整的Web环境 使用gradle作为构建工具 build.gradle group 'org.zln.lkd' ...