tr

基本语法(Synopsis)

tr [OPTION]... SET1 [SET2]

[] 表示可选项,... 表示可重复;大写名称表示需要替换的参数。

基本功能与推荐用法

tr 从标准输入翻译、删除或压缩字符。

printf 'Hello\n' | tr '[:upper:]' '[:lower:]'
printf 'a,b,c\n' | tr ',' '\t'
printf 'a   b\n' | tr -s ' '                 # 压缩重复空格
printf 'abc123\n' | tr -d '[:digit:]'        # 删除数字
printf 'a\0b\0' | tr '\0' '\n'
tr -cd '[:print:]\n' < input.txt             # 保留可打印字符

推荐:

  • tr 只读取标准输入,不直接接收文件名。
  • 字符类别使用 [:lower:]、[:digit:] 等可读写法。
  • tr 处理字符集合,不适合多字符字符串替换;字符串替换使用 sed。
  • Unicode 和 locale 相关转换要在目标环境测试。

示例中的选项、参数与子命令

本表解释本页示例实际出现的选项、参数、子命令及必要的辅助命令语法。

语法元素含义
-s, --squeeze-repeats把 SET1 中连续重复的字符压缩为一个。
-d, --delete删除 SET1 中的字符。
-c, --complement使用 SET1 的补集。
[:upper:] / [:lower:]POSIX 字符类,分别表示大写和小写字母。
\0NUL 字符,常用于安全分隔路径。

官方资料