十九、tr

       tr主要用来删除文件中的控制字符或进行字符转换

 

一、删除字符
    1、格式
:tr -s "字符表达式" 文件名
       字符表达式如下:
       [a-z]:a-z内的字符组成的字符串
       [A-Z]: A-Z内的字符组成的字符串
       [0-9]: 数字串
       /octal: 三位的八进制数,对应有效的ascii字符
       [o*n]:表示字符o重复n次,[o*2]表示匹配oo的字符串
       ["\n"]:换行符
    2、例子
       2.1、去除连续重复出现的字符,并保存输出
            tr -s "[a-z][A-Z]" <a.txt >result.txt
       2.2、去除空行
            tr -s ["\n"] <a.txt >result.txt 或
            tr -s "[\012]" <a.txt >result.txt
       2.3、大写到小写
            tr "[a-z]" "[A-Z]" <a.txt >result.txt
       2.4、小写到大写
            tr "[A-Z]" "[a-z]" <a.txt >result.txt

 

二、转换控制字符
    1、格式
:tr -s "原字符串表达式" "替换后的字符串表达式" < 文件名
    2、例子

       # cat -v control_string.sh  ^M的八进制是015
       #!/bin/bash^M
         ^M
         echo "Hello!"^M
         ^M
         echo `date`IMAPM2000:/opt/zj 
       # 

              
       2.1、有空格替换文件中的^M           

        # tr -s "[\015]" "\n" < control_string.sh  > new_resutl.sh

       2.2、删除多个字符

        # tr -s "[\015]" "\n" < control_string.sh | tr "[l*2]" "***" >new_resutl.sh 
        # cat -v new_resutl.sh 
        #!/bin/bash
          echo "He***o!"
          echo `date`

          echo "haha"
        # 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值