连接多个文件并打印到标准输出。
语法
cat [OPTION]... [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 |
显示版本信息并退出。 |
参数: FILE(可选):要处理的文件,可以为一或多个。
返回值: 返回状态为成功除非给出了非法选项或非法参数。
例子
# 合并显示多个文件
cat ./1.log ./2.log ./3.log
# 显示文件中的非打印字符、tab、换行符
cat -A test.log
# 压缩文件的空行
cat -s test.log
# 显示文件并在所有行开头附加行号
cat -n test.log
# 显示文件并在所有非空行开头附加行号
cat -b test.log
# 将标准输入的内容和文件内容一并显示
echo '######' |cat - test.log
注意
- 该命令是
GNU coreutils
包中的命令,相关的帮助信息请查看man -s 1 cat
或info coreutils 'cat invocation'
。 - 当使用
cat
命令查看体积较大的文件 时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容,为了控制滚屏,可以按Ctrl+s
键停止滚屏;按Ctrl+q
键恢复滚屏;按Ctrl+c
(中断)键可以终止该命令的执行,返回Shell提示符状态。 - 建议您查看体积较大的文件 时使用
less
、more
命令或emacs
、vi
等文本编辑器。
下一节:用来改变文件属性