首先来看一下官方文档
man cat
CAT(1) GNU CAT(1)
NAME
cat - 连接文件并在标准输出上输出
SYNOPSIS 总览
cat [选项列表] [文件列表]...
DESCRIPTION 描述
将文件列表中的文件或标准输入连接到标准输出。
-A, --show-all 等价于 -vET 。
-b, --number-nonblank 给非空输出行编号。
-e 等价于 -vE 。
-E, --show-ends 在每行结束显示 $ 。
-n, --number 给所有输出行编号。
-s, --squeeze-blank 将所有的连续的多个空行替换为一个空行。
-t 等价于 -vT 。
-T, --show-tabs 把 TAB 字符显示为 ^I 。
-u (被忽略的选项)
-v, --show-nonprinting 除了 LFD 和 TAB 之外所有控制符用 ^ 和 M- 记方式显示。
--help 显示帮助并退出。
--version 显示版本信息并退出。
没有指定文件或指定的文件是 -,则从标准输入读取。
下面我们讲解几个比较常用的参数:
下面是这些参数的使用示例:
可以看出tac是cat的倒着写
照例来看一下官方文档
man tac
TAC(1) FSF TAC(1)
NAME
tac - 反转显示文件
总览 (SYNOPSIS)
../src/tac [OPTION]... [FILE]...
描述 (DESCRIPTION)
把 每个 文件 FILE 显示在 标准输出, 后面 的 行 放在 前面. 如果 没有 指定 文件 FILE 或者 FILE 是 -, 就从 标准输入 读取 数据.
-b, --before 把 分隔单元 移到 前面, 而不是 后面
-r, --regex 分隔单元 是 正规表达式
-s, --separator=STRING 用 STRING 取代 换行符(newline) 作为 分隔单元
--help 显示 帮助信息, 然后 结束
--version 显示 版本信息, 然后 结束
这个命令就比较简单了 ,可以看一下这个命令与cat命令输出同一个文件有何不同
首先来看一下官方文档
man nl
NL(1) User Commands NL(1)
NAME
nl - number lines of files
SYNOPSIS
nl [OPTION]... [FILE]...
DESCRIPTION
Write each FILE to standard output, with line numbers added. With no FILE, or when FILE is -, read standard input.
Mandatory arguments to long options are mandatory for short options too.
-b, --body-numbering=STYLE use STYLE for numbering body lines
-d, --section-delimiter=CC use CC for separating logical pages
-f, --footer-numbering=STYLE use STYLE for numbering footer lines
-h, --header-numbering=STYLE use STYLE for numbering header lines
-i, --line-increment=NUMBER line number increment at each line
-l, --join-blank-lines=NUMBER group of NUMBER empty lines counted as one
-n, --number-format=FORMAT insert line numbers according to FORMAT
-p, --no-renumber do not reset line numbers at logical pages
-s, --number-separator=STRING add STRING after (possible) line number
-v, --starting-line-number=NUMBER first line number on each logical page
-w, --number-width=NUMBER use NUMBER columns for line numbers
--help display this help and exit
--version output version information and exit
不知道为什么这个文档是英文的了
下面讲解一下比较常用的三个选项
下面看一下使用示例
more命令比较简单,在more后面跟上要查看的文件名就可以查看内容了,
下面主要讲解一下在more这个程序的运行过程中的几个操作:
less的操作比more要丰富一些:
首先看一下官方文档
man head
HEAD(1) FSF HEAD(1)
NAME(名称)
head - 输出文件的开始部分
SYNOPSIS(总览)
../src/head [OPTION]... [FILE]...
DESCRIPTION(描述)
在标准输出上显示每个FILE的起始10行. 如果多于一个FILE,则一个接一个地显示, 并且在每个文件显示的首部给出文件名. 如果没有FILE,或者FILE为-, 那么就从标准输入上读取.
-c, --bytes=SIZE 打印起始的SIZE字节
-n, --lines=NUMBER 显示起始的NUMBER行,而非默认的起始10行
-q, --quiet, --silent 从不显示给出文件名的首部
-v, --verbose 总是显示给出文件名的首部
--help 显示帮助后退出
--version 输出版本信息后退出
SIZE可以有一个倍数后缀: b表示512,k表示1K,m表示1M. 如果第一个OPTION(选项)为-VALUE, 当后面连接着倍数bkm之一时,则读为-c VALUE, 否则读为-n VALUE.
下面主要讲一下-n这个参数的使用。
如果没有加上-n的话,默认显示十行。
如果-n后面写的是负数代表列前的所有行数,但不包括后面的100行。比如说/etc/man_db.conf共有131行,则上述的指令 head -n -100 /etc/man_db.conf 就会列出前面的31行,后面的100行就不打印出来了
这里主要讲解一下下面两个选项:
默认显示最后的十行
显示100行以后的数据
要等到输入CTRL+c之后才会离开tail这个指令的侦测
关于tail更加详细的介绍,可以看我的另一篇博客。
linux查看tomcat运行日志
head -n 20 /etc/man_db.conf | tail -n 10
cat -n /etc/man_db.conf | head -n 20 |tail -n 10