1 | tac
|
2 | ===
|
3 |
|
4 | 连接多个文件并以行为单位反向打印到标准输出。
|
5 |
|
6 | ## 概要
|
7 |
|
8 | ```shell
|
9 | tac [OPTION]... [FILE]...
|
10 | ```
|
11 |
|
12 | ## 主要用途
|
13 |
|
14 | - 按行为单位反向显示文件内容,如果没有文件或文件为`-`则读取标准输入。
|
15 | - 处理多个文件时,依次将每个文件反向显示,而不是将所有文件连在一起再反向显示。
|
16 |
|
17 |
|
18 | ## 参数
|
19 |
|
20 | FILE(可选):要处理的文件,可以为一或多个。
|
21 |
|
22 | ## 选项
|
23 |
|
24 | ```shell
|
25 | 长选项与短选项等价
|
26 |
|
27 | -b, --before 在之前而不是之后连接分隔符。
|
28 | -r, --regex 将分隔符作为基础正则表达式(BRE)处理。
|
29 | -s, --separator=STRING 使用STRING作为分隔符代替默认的换行符。
|
30 | --help 显示帮助信息并退出。
|
31 | --version 显示版本信息并退出。
|
32 | ```
|
33 |
|
34 | ## 返回值
|
35 |
|
36 | 返回状态为成功除非给出了非法选项或非法参数。
|
37 |
|
38 | ## 例子
|
39 |
|
40 | ```shell
|
41 | # 选自官方info文档的例子:
|
42 | # 一个接着一个字符的反转一个文件:
|
43 | tac -r -s 'x\|[^x]' test.log
|
44 |
|
45 | # 关于-b选项:
|
46 | seq 1 3 |tac
|
47 | # 输出
|
48 | 3
|
49 | 2
|
50 | 1
|
51 | # 使用-b选项:
|
52 | seq 1 3 |tac -b
|
53 | # 输出,注意21后面没有换行符:
|
54 |
|
55 |
|
56 | 3
|
57 | 21
|
58 | # 前一个例子相当于将 '1\n2\n3\n' 转换为 '3\n2\n1\n'
|
59 | # 前一个例子相当于将 '1\n2\n3\n' 转换为 '\n\n3\n21'
|
60 | ```
|
61 |
|
62 | ### 注意
|
63 |
|
64 | 1. 该命令是`GNU coreutils`包中的命令,相关的帮助信息请查看`man -s 1 tac`或`info coreutils 'tac invocation'`。
|
65 | 2. 关于基础正则表达式(BRE)的内容,详见`man -s 1 grep`的`REGULAR EXPRESSIONS`段落。
|
66 |
|
67 |
|