命令学习-cat
cat
命令用来连接多个文件并打印到标准输出。
语法
cat [OPTION]... [FILE]...
主要用途
- 显示文件内容,如果没有文件或文件为
-
则读取标准输入。 - 将多个文件的内容进行连接并打印到标准输出。
- 显示文件内容中的不可见字符(控制字符、换行符、制表符等)。
参数
- FILE(可选):要处理的文件,可以为一或多个。
选项
(长选项与短选项等价)
-A, –show-all:等价于
-vET
组合选项。-b, –number-nonblank:只对非空行编号,从1开始编号,覆盖
-n
选项。-e:等价于
-vE
组合选项。-E, –show-ends:在每行的结尾显示
$
字符。-n, –number:对所有行编号,从1开始编号。
-s, –squeeze-blank:压缩连续的空行到一行。
-t:等价于
-vT
组合选项。-T, –show-tabs:使用
^I
表示 TAB(制表符)。-u:POSIX 兼容性选项,无意义。
-v, –show-nonprinting:使用
^
和M-
符号显示控制字符,除了 LFD(line feed,即换行符\n
)和 TAB(制表符)。–help:显示帮助信息并退出。
–version:显示版本信息并退出。
返回值
返回状态为成功除非给出了非法选项或非法参数。
例子
- 合并显示多个文件
|
|
将 ./1.log、./2.log 和 ./3.log 文件的内容合并并显示。
- 显示文件中的非打印字符、tab、换行符
|
|
显示文件 test.log 中的所有不可见字符、tab(制表符)和换行符。
- 压缩文件的空行
|
|
将 test.log 中的连续空行压缩为一行。
- 显示文件并在所有行开头附加行号
|
|
在 test.log 文件的每一行前添加行号。
- 显示文件并在所有非空行开头附加行号
|
|
仅在 test.log 文件中的非空行前添加行号。
- 将标准输入的内容和文件内容一并显示
|
|
显示标准输入的内容和文件 test.log 的内容。
注意
cat 命令是 GNU coreutils 包中的命令,相关的帮助信息请查看 man -s 1 cat 或 info coreutils ‘cat invocation’。 当使用 cat 命令查看体积较大的文件时,文本在屏幕上迅速滚动,用户可能看不清所显示的内容。为了控制滚屏,可以按 Ctrl+s 键停止滚屏;按 Ctrl+q 键恢复滚屏;按 Ctrl+c(中断)键可以终止该命令的执行,返回 Shell 提示符状态。 查看体积较大的文件时,建议使用 less、more 命令或 emacs、vi 等文本编辑器。