zoukankan      html  css  js  c++  java
  • linux下的tr命令

    1、使用方法

    tr命令可以对来自标准输入的字符进行替换、压缩和删除。
    -c或--complerment:取代所有不属于第一字符集的字符;
    -d或--delete:删除所有属于第一字符集的字符; 
    -s或--squeeze-repeats:把连续重复的字符以单独一个字符表示; 
    -t或--truncate-set1:先删除第一字符集较第二字符集多出的字符。
    注意:tr命令只改变输出显示效果,不改变实际输入源内容。在替换、删除文件内容时需要重定向输出。

    2、字符范围

    指定字符串1或字符串2的内容时,只能使用单字符或字符串范围或列表。[a-z] a-z内的字符组成的字符串。
    [A-Z] A-Z内的字符组成的字符串。
    [0-9] 数字串。
    octal 一个三位的八进制数,对应有效的ASCII字符。
    [O*n] 表示字符O重复出现指定次数n。因此[O*2]匹配OO的字符串。
    tr中特定控制字符的不同表达方式
    速记符含义八进制方式
    a Ctrl-G  铃声07
     Ctrl-H  退格符10
    f Ctrl-L  走行换页14
    Ctrl-J  新行12
    Ctrl-M  回车15
    Ctrl-I  tab键11
    v Ctrl-X  30

    字符类:

    [:alnum:]:字母和数字 

    [:alpha:]:字母 

    [:cntrl:]:控制(非打印)字符 

    [:digit:]:数字 

    [:graph:]:图形字符 

    [:lower:]:小写字母 

    [:print:]:可打印字符 

    [:punct:]:标点符号 

    [:space:]:空白字符 

    [:upper:]:大写字母 

    [:xdigit:]:十六进制字符

    3. 应用实例

    (1)将输入字符由大写转换为小写:
    echo "HELLO WORLD" | tr '[A-Z]' '[a-z]' 
    hello world
    (2)删除字符
    echo "hello 123 world 456" | tr -d '0-9' 
    hello world 
    (3)删除字符的补集
    echo aa.,a 1 b#$bb 2 c*/cc 3 ddd 4 | tr -d -c '0-9 
    ' 
    1 2 3 4
    (4)压缩重复的字符
    echo "thissss is a text linnnnnnne." | tr -s ' sn' 
    this is a text line.
    (5)替换文件内容
    cat file | tr 'abc' 'ABC' > newfile
     
  • 相关阅读:
    JavaScript
    CSS
    HTML5&CSS
    I2C mux和复杂拓扑
    如何实例化I2C设备
    SMBus 协议
    I2C 协议
    I2C和SMBus简介
    ubuntu20.04系统下更新Raspberry Pi4的DTB
    通过configfs配置的Linux USB gadget
  • 原文地址:https://www.cnblogs.com/hancq/p/5539981.html
Copyright © 2011-2022 走看看