千家信息网

Linux系统tr命令怎么用

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,小编给大家分享一下Linux系统tr命令怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Linux系统中tr命令可以对
千家信息网最后更新 2026年11月01日Linux系统tr命令怎么用

小编给大家分享一下Linux系统tr命令怎么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

Linux系统中tr命令可以对来自标准输入的字符进行替换、压缩和删除。它可以将一组字符变成另一组字符。

语法

 tr [-cdst][--help][--version][第一字符集][第二字符集]   tr [OPTION]…SET1[SET2]

参数说明:

  • -c, –complement:反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换

  • -d, –delete:删除指令字符

  • -s, –squeeze-repeats:缩减连续重复的字符成指定的单个字符

  • -t, –truncate-set1:削减 SET1 指定范围,使之与 SET2 设定长度相等

  • –help:显示程序用法信息

  • –version:显示程序本身的版本信息

字符集合的范围:

  • \NNN 八进制值的字符 NNN (1 to 3 为八进制值的字符)

  • \ 反斜杠

  • \a Ctrl-G 铃声

  • \b Ctrl-H 退格符

  • \f Ctrl-L 走行换页

  • \n Ctrl-J 新行

  • \r Ctrl-M 回车

  • \t Ctrl-I tab键

  • \v Ctrl-X 水平制表符

  • CHAR1-CHAR2 :字符范围从 CHAR1 到 CHAR2 的指定,范围的指定以 ASCII 码的次序为基础,只能由小到大,不能由大到小。

  • [CHAR*] :这是 SET2 专用的设定,功能是重复指定的字符到与 SET1 相同长度为止

  • [CHAR*REPEAT] :这也是 SET2 专用的设定,功能是重复指定的字符到设定的 REPEAT 次数为止(REPEAT 的数字采 8 进位制计算,以 0 为开始)

  • [:alnum:] :所有字母字符与数字

  • [:alpha:] :所有字母字符

  • [:blank:] :所有水平空格

  • [:cntrl:] :所有控制字符

  • [:digit:] :所有数字

  • [:graph:] :所有可打印的字符(不包含空格符)

  • [:lower:] :所有小写字母

  • [:print:] :所有可打印的字符(包含空格符)

  • [:punct:] :所有标点字符

  • [:space:] :所有水平与垂直空格符

  • [:upper:] :所有大写字母

  • [:xdigit:] :所有 16 进位制的数字

  • [=CHAR=] :所有符合指定的字符(等号里的 CHAR,代表你可自订的字符)

案例演示:

将输入字符由大写转换为小写:

 echo "HELLO WORLD" | tr 'A-Z' 'a-z' hello world

‘A-Z’ 和 ‘a-z’都是集合,集合是可以自己制定的,例如:’ABD-}’、’bB.,’、’a-de-h’、’a-c0-9’都属于集合,集合里可以使用’\n’、’\t’,可以可以使用其他ASCII字符。

使用tr删除字符:

 echo "hello 123 world 456" | tr -d '0-9' hello  world

将制表符转换为空格:

 cat text | tr '\t' ' '

字符集补集,从输入文本中将不在补集中的所有字符删除:

 echo aa.,a 1 b#$bb 2 c*/cc 3 ddd 4 | tr -d -c '0-9 \n'  1  2  3  4

此例中,补集中包含了数字0~9、空格和换行符\n,所以没有被删除,其他字符全部被删除了。

用tr压缩字符,可以压缩输入中重复的字符:

 echo "thissss is      a text linnnnnnne." | tr -s ' sn' this is a text line.

巧妙使用tr做数字相加操作:

 echo 1 2 3 4 5 6 7 8 9 | xargs -n1 | echo $[ $(tr '\n' '+') 0 ]

删除Windows文件"造成"的’^M’字符:

 cat file | tr -s "\r" "\n" > new_file 或 cat file | tr -d "\r" > new_file

tr可以使用的字符类:

 [:alnum:]:字母和数字 [:alpha:]:字母 [:cntrl:]:控制(非打印)字符 [:digit:]:数字 [:graph:]:图形字符 [:lower:]:小写字母 [:print:]:可打印字符 [:punct:]:标点符号 [:space:]:空白字符 [:upper:]:大写字母 [:xdigit:]:十六进制字符

使用方式:

 tr '[:lower:]' '[:upper:]'

以上是"Linux系统tr命令怎么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

字符 字母 数字 空格 范围 输入 命令 系统 大写 字符集 小写 水平 空格符 篇文章 信息 八进制 内容 制表符 功能 大写字母 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 河南真二互联网科技有限公司 中国 科技 互联网 美国互联网科技 狮子座互联网科技有限公司 腾讯科技 互联网女皇 掌上梦互联网科技 深圳互联网科技怎么样 银川新华互联网科技学校地址 中国的互联网科技企业的崛起 剑昆互联网络科技有限公司临桂 汽车互联网创新科技园 茂名市互联网科技产业园 互联网科技与管理 互联网在线教育科技创业 威龙国际互联网科技公司 朱啸虎曾投资哪些互联网科技企业 互联网数据科技专业 科技赋能视角下互联网保险发展 山东有哪些互联网科技公司 互联网科技对化妆品行业 互联网高科技 百单网互联网科技有限公司怎么样 互联网科技公司华为 浩特互联网科技 互联网科技大会 互联网科技博客 互联网校园科技培训 济南有互联网科技公司吗 杭州披云加互联网科技有限公司 广州有谷有贝互联网科技有限公司
0