tr - 转换或删除字符
用法
tr [选项]... STRING1 [STRING2]
描述
从标准输入读取数据,转换、压缩和/或删除字符,并将结果写入标准输出。 STRING1 和 STRING2 指定字符数组 ARRAY1 和 ARRAY2,用于控制操作。
-c, -C, --complement
使用 ARRAY1 的补集
-d, --delete
删除 ARRAY1 中的字符,不进行转换
-s, --squeeze-repeats
将最后一个指定的 ARRAY 中重复字符的每个序列替换为该字符的单个实例
-t, --truncate-set1
首先将 ARRAY1 截断为 ARRAY2 的长度
--help
显示此帮助信息并退出
--version
输出版本信息并退出
数组以字符串形式指定。大多数字符都表示自身。解释的序列为:
\NNN 具有八进制值 NNN 的字符(1 到 3 个八进制数字)
\\ 反斜杠
\a 响铃符
\b 退格符
\f 换页符
\n 换行符
\r 回车符
\t 水平制表符
\v 垂直制表符
CHAR1-CHAR2
从 CHAR1 到 CHAR2(升序)的所有字符
[CHAR*]
在 ARRAY2 中,复制 CHAR,直到长度等于 ARRAY1
[CHAR*REPEAT]
REPEAT 个 CHAR 副本,如果以 0 开头,则 REPEAT 为八进制
[:alnum:]
所有字母和数字
[:alpha:]
所有字母
[:blank:]
所有水平空白字符
[:cntrl:]
所有控制字符
[:digit:]
所有数字
[:graph:]
所有可打印字符,不包括空格
[:lower:]
所有小写字母
[:print:]
所有可打印字符,包括空格
[:punct:]
所有标点符号
[:space:]
所有水平或垂直空白字符
[:upper:]
所有大写字母
[:xdigit:]
所有十六进制数字
[=CHAR=]
所有与 CHAR 相同的字符
如果未提供 -d 选项并且同时提供了 STRING1 和 STRING2,则进行转换。-t 仅在进行转换时才有效。ARRAY2 通过重复其最后一个字符扩展到 ARRAY1 的长度, 多余的 ARRAY2 字符将被忽略。字符类以未指定的顺序扩展;在进行转换时,可以使用 [:lower:] 和 [:upper:] 成对使用,以指定大小写转换。 压缩操作在转换或删除之后发生。
错误
仅在安全的单字节区域设置中才提供完整支持,在该区域设置中,每个可能的输入字节都表示单个字符。在 GNU 系统中,C 区域设置是安全的,因此可以通过在 shell 中使用 LC_ALL=C tr 代替 plain tr 来避免此问题。
作者
作者:Jim Meyering。
报告错误
GNU coreutils 在线帮助:[https://www.gnu.org/software/coreutils/] 请将任何翻译错误报告到 [https://translationproject.org/team/]
参见
完整的文档 [https://www.gnu.org/software/coreutils/tr] 或者在本地通过以下方式获取:info '(coreutils) tr invocation'
由 Debian (9.7-3) 封装 版权所有 © 2025 自由软件基金会。 许可证 GPLv3+:GNU GPL 第 3 版或更高版本 [https://gnu.org/licenses/gpl.html]。 这是自由软件:您可以自由地更改和重新分发它。 在法律允许的范围内,不提供任何保修。