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 字符类,分别表示大写和小写字母。 |
\0 | NUL 字符,常用于安全分隔路径。 |