阅读目录 (Content)
一.命令格式:
二.命令功能:
三. 命令参数
四. 使用实例
1. 将 file1 的文档内容覆盖到 file2 中
2. 将 file1 的内容追加到 file2 的内容中
3. 清空 file1 文档内容
4. 倒序输出 file2 中的内容
cat 命令的用途是连接文件或标准输入并打印. 这个命令常用来显示文件内容, 或者将几个文件连接起来显示, 或者从标准输入读取内容并显示, 它常与重定向符号配合使用.
一.命令格式:
cat [参数] [文件]...
二.命令功能:
cat 主要有三大功能:
1. 一次显示整个文件: cat filename
2. 从键盘创建一个文件: cat> filename 只能创建新文件, 不能编辑已有文件.
3. 将几个文件合并为一个文件: cat file1 file2> file
三. 命令参数
参数 | 描述 |
---|---|
-n | --number , 由 1 开始对所有输出的行数编号 |
-b | --number-nonblank, 和 -n 相似,只不过对于空白行不编号。 |
-s | --squeeze-blank, 当遇到有连续两行以上的空白行, 就代换为一行的空白行。 |
-v | --show-nonprinting , 使用 ^ 和 M- 引用,除了 LFD 和 TAB 之外 |
-E | --show-ends , 在每行结束处显示 $ |
-T | --show-tabs,将 TAB 字符显示为 ^I。 |
-A | --show-all , 等价于 -vET |
-e | 等价于 -vE |
-t | 与 -vT 等价 |
四. 使用实例
1. 将 file1 的文档内容覆盖到 file2 中
命令:
不带行号覆盖内容
cat file1> file2
带行号覆盖内容
cat -n file1> file2
输出:
zbk@zbk-virtual-machine:~/test$ cat file1
我是 file1 的第一行
我是 file1 的第二行
- zbk@zbk-virtual-machine:~/test$ cat file2
- zbk@zbk-virtual-machine:~/test$ cat file1> file2
- zbk@zbk-virtual-machine:~/test$ cat file2
我是 file1 的第一行
我是 file1 的第二行
- zbk@zbk-virtual-machine:~/test$ cat -n file1> file2
- zbk@zbk-virtual-machine:~/test$ cat file2
1 我是 file1 的第一行
2 我是 file1 的第二行
2. 将 file1 的内容追加到 file2 的内容中
命令:
不带行号追加
cat file1>> file2
带行号追加 (空白行不加行号)
输出:
zbk@zbk-virtual-machine:~/test$ cat file1
我是 file1 的第一行
我是 file1 的第二行
zbk@zbk-virtual-machine:~/test$ cat file2
我是 file2 的第一行
我是 file2 的第 6 行
- zbk@zbk-virtual-machine:~/test$ cat file1>> file2
- zbk@zbk-virtual-machine:~/test$ cat file1
我是 file1 的第一行
我是 file1 的第二行
zbk@zbk-virtual-machine:~/test$ cat file2
我是 file2 的第一行
我是 file2 的第 6 行
我是 file1 的第一行
我是 file1 的第二行
- zbk@zbk-virtual-machine:~/test$ cat -b file2>> file1
- zbk@zbk-virtual-machine:~/test$ cat file1
我是 file1 的第一行
我是 file1 的第二行
1 我是 file2 的第一行
2 我是 file2 的第 6 行
3 我是 file1 的第一行
4 我是 file1 的第二行
zbk@zbk-virtual-machine:~/test$
说明:
> 是重新编辑内容,>> 是追加内容
3. 清空 file1 文档内容
命令:
cat /dev/null> file1
输出:
zbk@zbk-virtual-machine:~/test$ cat file1
我是 file1 的第一行
我是 file1 的第二行
1 我是 file2 的第一行
2 我是 file2 的第 6 行
3 我是 file1 的第一行
4 我是 file1 的第二行
- zbk@zbk-virtual-machine:~/test$ cat /dev/null> file1
- zbk@zbk-virtual-machine:~/test$ cat file1
- zbk@zbk-virtual-machine:~/test$
4. 倒序输出 file2 中的内容
命令:
tac file2
输出:
zbk@zbk-virtual-machine:~/test$ cat file2
我是 file2 的第一行
我是 file2 的第 6 行
我是 file1 的第一行
我是 file1 的第二行
zbk@zbk-virtual-machine:~/test$ tac file2
我是 file1 的第二行
我是 file1 的第一行
我是 file2 的第 6 行
我是 file2 的第一行
zbk@zbk-virtual-machine:~/test$
说明:
tac 是将 cat 反写过来, 所以他的功能就跟 cat 相反, cat 是由第一行到最后一行连续显示在屏幕上, 而 tac 则是由最后一行到第一行反向在屏幕上显示出来!
来源: http://www.bubuko.com/infodetail-2900821.html