Linux-tr命令详细使用方法

1、tr介绍

Linux tr 命令用于转换或删除文件中的字符。tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备。

2、语法

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

3、参数说明

字符串含义
-c, --complement反选设定字符。也就是符合 SET1 的部份不做处理,不符合的剩余部份才进行转换
-d, --delete删除指令字符
-s, --squeeze-repeats缩减连续重复的字符成指定的单个字符
-t, --truncate-set1削减 SET1 指定范围,使之与 SET2 设定长度相等
--help显示程序用法信息
--version显示程序本身的版本信息

4、常用的匹配字符串

字符串含义
a-z或[:lower:]匹配所有小写字母
A-Z或[:upper:]匹配所有大写字母
0-9或[:digit:]匹配所有的数字
[:alnum:]匹配所有字母和数字
[:alpha:]匹配所有字母
[:blank:]所有水平空白
[:punct:]匹配所有标点符号
[:space:]皮牌所有水平或垂直的空格
[:cntrl:]匹配所有控制字符

5、tr命令常用实例

5.1 比如这里准备一个文件内容如下:

[root@centos7 ~]# cat test.txt 
"192.168.200.254"
"abcdEFG00ZZxxYy"
"测试"

root:123:ABC

5.2 将所有小写字母转换成大写字母

[root@centos7 ~]# tr 'a-z' 'A-Z' < test.txt 
"192.168.200.254"
"ABCDEFG00ZZXXYY"
"测试"

ROOT:123:ABC

5.3 将文件里面的数字全部改成 & 符号

[root@centos7 ~]# tr '0-9' '&' < test.txt 
"&&&.&&&.&&&.&&&"
"abcdEFG&&ZZxxYy"
"测试"

root:&&&:ABC

5.4 将文件里面的冒号替换成tab制表符,如:管道符 && 换行符

# 管道符
[root@centos7 ~]# tr ':' '\t' < test.txt 
"192.168.200.254"
"abcdEFG00ZZxxYy"
"测试"

root	123	ABC
# 换行符
[root@centos7 ~]# tr ':' '\n' < test.txt 
"192.168.200.254"
"abcdEFG00ZZxxYy"
"测试"

root
123
ABC

5.5 删除文件里面的所有小写字母或者标点符号,比如:引号

[root@centos7 ~]# tr -d 'a-z' < test.txt 
"192.168.200.254"
"EFG00ZZY"
"测试"

:123:ABC
[root@centos7 ~]# tr -d '"' < test.txt 
192.168.200.254
abcdEFG00ZZxxYy
测试

root:123:ABC

5.6 也可以直接删除多组,直接叠加即可

[root@centos7 ~]# tr -d '"/A-Z' < test.txt 
192.168.200.254
abcd00xxy
测试

root:123:

5.7 删除文件里面的空白行

[root@centos7 ~]# tr -s '\n' < test.txt 
"192.168.200.254"
"abcdEFG00ZZxxYy"
"测试"
root:123:ABC
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值