tac

连接多个文件并以行为单位反向打印到标准输出。

概要

tac [OPTION]... [FILE]...

主要用途

  • 按行为单位反向显示文件内容,如果没有文件或文件为-则读取标准输入。
  • 处理多个文件时,依次将每个文件反向显示,而不是将所有文件连在一起再反向显示。

参数

FILE(可选):要处理的文件,可以为一或多个。

选项

长选项与短选项等价

-b, --before              在之前而不是之后连接分隔符。
-r, --regex               将分隔符作为基础正则表达式(BRE)处理。
-s, --separator=STRING    使用STRING作为分隔符代替默认的换行符。
--help                    显示帮助信息并退出。
--version                 显示版本信息并退出。

返回值

返回状态为成功除非给出了非法选项或非法参数。

例子

# 选自官方info文档的例子:

<!-- toc -->

- [一个接着一个字符的反转一个文件:](#一个接着一个字符的反转一个文件:)
- [关于-b选项:](#关于-b选项:)
- [输出](#输出)
- [使用-b选项:](#使用-b选项:)
- [输出,注意21后面没有换行符:](#输出,注意21后面没有换行符:)
- [前一个例子相当于将 '1\n2\n3\n' 转换为 '3\n2\n1\n'](#前一个例子相当于将-1n2n3n-转换为-3n2n1n)
- [前一个例子相当于将 '1\n2\n3\n' 转换为 '\n\n3\n21'](#前一个例子相当于将-1n2n3n-转换为-nn3n21)

<!-- tocstop -->

# 一个接着一个字符的反转一个文件:
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 tacinfo coreutils 'tac invocation'
  2. 关于基础正则表达式(BRE)的内容,详见man -s 1 grepREGULAR EXPRESSIONS段落。
Copyright © 温玉 2021 | 浙ICP备2020032454号 all right reserved,powered by Gitbook该文件修订时间: 2023-08-11 11:04:57

results matching ""

    No results matching ""