Update tac.md

更新文档内容。
This commit is contained in:
ZhuangZhu-74 2019-09-30 10:27:59 +08:00 committed by GitHub
parent 63e0fbf4c8
commit 8cb560c35a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 51 additions and 12 deletions

View File

@ -1,28 +1,67 @@
tac
===
将文件以行为单位的反序输出
连接多个文件并以行为单位反向打印到标准输出。
## 补充说明
**tac命令** 用于将文件以行为单位的反序输出,即第一行最后显示,最后一行先显示。
### 语法
## 概要
```shell
tac(选项)(参数)
tac [OPTION]... [FILE]...
```
### 选项
## 主要用途
- 按行为单位反向显示文件内容,如果没有文件或文件为`-`则读取标准输入。
- 处理多个文件时,依次将每个文件反向显示,而不是将所有文件连在一起再反向显示。
## 参数
FILE可选要处理的文件可以为一或多个。
## 选项
```shell
-a或——append将内容追加到文件的末尾
-i或——ignore-interrupts忽略中断信号。
长选项与短选项等价
-b, --before 在之前而不是之后连接分隔符。
-r, --regex 将分隔符作为基础正则表达式BRE处理。
-s, --separator=STRING 使用STRING作为分隔符代替默认的换行符。
--help 显示帮助信息并退出。
--version 显示版本信息并退出。
```
### 参数
## 返回值
文件列表:指定要保存内容的文件列表。
返回状态为成功除非给出了非法选项或非法参数
## 例子
```shell
# 选自官方info文档的例子
# 一个接着一个字符的反转一个文件:
tac -r -s 'x\|[^x]' test.log
# 关于-b选项
seq 1 3 |tac
# 输出
3
2
1
# 使用-b选项
seq 1 3 |tac -b
# 输出注意21后面没有换行符
3
21
# 前一个例子相当于将 '1\n2\n3\n' 转换为 '3\n2\n1\n'
# 前一个例子相当于将 '1\n2\n3\n' 转换为 '\n\n3\n21'
```
### 注意
1. 该命令是`GNU coreutils`包中的命令,相关的帮助信息请查看`man -s 1 tac`或`info coreutils 'tac invocation'`。
2. 关于基础正则表达式BRE的内容详见`man -s 1 grep`的`REGULAR EXPRESSIONS`段落。
<!-- Linux命令行搜索引擎https://jaywcjlove.github.io/linux-command/ -->