Skip to content

Commit 63e0fbf

Browse files
authored
Update cat.md
更新文档内容。
1 parent cb723f5 commit 63e0fbf

File tree

1 file changed

+52
-23
lines changed

1 file changed

+52
-23
lines changed

command/cat.md

Lines changed: 52 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,44 +1,73 @@
11
cat
22
===
33

4-
连接文件并打印到标准输出设备上
4+
连接多个文件并打印到标准输出。
55

6-
## 补充说明
6+
## 概要
77

8-
**cat命令** 连接文件并打印到标准输出设备上,cat经常用来显示文件的内容,类似于下的type命令。
8+
```shell
9+
cat [OPTION]... [FILE]...
10+
```
911

10-
注意:当文件较大时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容。因此,一般用more等命令分屏显示。为了控制滚屏,可以按Ctrl+S键,停止滚屏;按Ctrl+Q键可以恢复滚屏。按Ctrl+C(中断)键可以终止该命令的执行,并且返回Shell提示符状态。
12+
## 主要用途
1113

12-
### 语法
14+
- 显示文件内容,如果没有文件或文件为`-`则读取标准输入。
15+
- 将多个文件的内容进行连接并打印到标准输出。
16+
- 显示文件内容中的不可见字符(控制字符、换行符、制表符等)。
1317

14-
```shell
15-
cat(选项)(参数)
16-
```
18+
## 参数
19+
20+
FILE(可选):要处理的文件,可以为一或多个。
1721

18-
### 选项
22+
## 选项
1923

2024
```shell
21-
-n或--number:从1开始对所有输出的行数编号;
22-
-b或--number-nonblank:和-n相似,只不过对于空白行不编号;
23-
-s或--squeeze-blank:当遇到有连续两行以上的空白行,就代换为一行的空白行;
24-
-A:显示不可打印字符,行尾显示“$”;
25-
-e:等价于"-vE"选项;
26-
-t:等价于"-vT"选项;
27-
```
25+
长选项与短选项等价
2826

29-
### 参数
27+
-A, --show-all 等价于"-vET"组合选项。
28+
-b, --number-nonblank 只对非空行编号,从1开始编号,覆盖"-n"选项。
29+
-e 等价于"-vE"组合选项。
30+
-E, --show-ends 在每行的结尾显示'$'字符。
31+
-n, --number 对所有行编号,从1开始编号。
32+
-s, --squeeze-blank 压缩连续的空行到一行。
33+
-t 等价于"-vT"组合选项。
34+
-T, --show-tabs 使用"^I"表示TAB(制表符)。
35+
-u POSIX兼容性选项,无意义。
36+
-v, --show-nonprinting 使用"^""M-"符号显示控制字符,除了LFD(line feed,即换行符'\n')和TAB(制表符)。
3037

31-
文件列表:指定要连接的文件列表。
38+
--help 显示帮助信息并退出。
39+
--version 显示版本信息并退出。
40+
```
41+
42+
## 返回值
3243

33-
### 实例
44+
返回状态为成功除非给出了非法选项或非法参数。
3445

35-
设m1和m2是当前目录下的两个文件
46+
## 例子
3647

3748
```shell
38-
cat m1 (在屏幕上显示文件m1的内容)
39-
cat m1 m2 (同时显示文件m1和m2的内容)
40-
cat m1 m2 > file (将文件m1和m2合并后放入文件file中)
49+
# 合并显示多个文件
50+
cat ./1.log ./2.log ./3.log
51+
# 显示文件中的非打印字符、tab、换行符
52+
cat -A test.log
53+
# 压缩文件的空行
54+
cat -s test.log
55+
# 显示文件并在所有行开头附加行号
56+
cat -n test.log
57+
# 显示文件并在所有非空行开头附加行号
58+
cat -b test.log
59+
# 将标准输入的内容和文件内容一并显示
60+
echo '######' |cat - test.log
4161
```
4262

63+
### 注意
64+
65+
1. 该命令是`GNU coreutils`包中的命令,相关的帮助信息请查看`man -s 1 cat``info coreutils 'cat invocation'`
66+
2. 当使用`cat`命令查看**体积较大的文件**时,文本在屏幕上迅速闪过(滚屏),用户往往看不清所显示的内容,为了控制滚屏,可以按`Ctrl+s`键停止滚屏;按`Ctrl+q`键恢复滚屏;按`Ctrl+c`(中断)键可以终止该命令的执行,返回Shell提示符状态。
67+
3. 建议您查看**体积较大的文件**时使用`less``more`命令或`emacs``vi`等文本编辑器。
68+
69+
### 参考链接
70+
71+
1. [Question about LFD key](https://superuser.com/questions/328054/is-there-an-lfd-key-on-my-keyboard)
4372

4473
<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ -->

0 commit comments

Comments
 (0)