Linux命令TR

Linux命令TR


tr介绍

tr - translate characters
是对sed功能的简略版,能够删除和替换字符的一个简易命令

tr [option] string1 [string2]
  • -c -C –complement 填充除了你想要字符之外的character
  • -d –delete 删除
  • -s –squeeze-repeats 替换

代码实现

1 -c参数

echo file|tr -c 'fil' ' '

fil  %   

他会将出fil之外的字符自动补充成空字符串.
接下来看代码是不是支持正则表达式

echo file|tr -c '[a-i]*' ' '

fi e %    

2 -d

echo file|tr -d 'fil'

e  %   

换上正则试一试

echo file|tr -d '[a-i]*'

l %    

3 -s

echo file|tr -s 'fil' 'tes'

tese  %   

换上正则试一试

echo file|tr -s '[a-i]*' 'tes'

sls %    

多个参数的使用

大体上的使用就是上面的一些简单操作,接下来试试看多个参数进行测试。我自己尝试了一下能不能对多个文件进行tr,后来好像不太行,翻墙看了下文档和man一下,上面说的是string,那么我认为应该是不能 tr [option] file1 这样的结构的。

tr [-Ccsu] string1 string2
tr [-Ccu] -d string1
tr [-Ccu] -s string1
tr [-Ccu] -ds string1 string2

上面是多个参数的语法

echo abcdefg > a
tr -cd 'a'< a

a

换一个正则看看

echo abcdABCD > b
tr -cd '[a-cA-B]*' < b

abcAB% 

根据结果,应该是显示对哪些参数进行了处理。并且对大小写敏感,如果你想要处理一堆大小写混合的数据的话,最好先转换成相同格式的在处理,tr有自带的class对象,man下有很好的说明。我这就举一个大小写转换的例子。

tr '[:lower:]' '[:upper:]' < b

ABCDABCD

这边就一些入门的例子,记录以便以后忘记,如果对其他class有兴趣的话可以自己去看看。


[2]: man tr

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值