lidonghe 发表于 2018-8-21 13:43:17

shell学习之tr命令

  tr命令不接受指定的文件参数,而只是对标准输入进行翻译, tr是translate的简写,亦即翻译,需要注意的是,它不能翻译句子,只能翻译单个字符。
  首先,定义变量:
    #A=1,,2,,,3,,,4,,,5  下面以示例对该命令以及其常用选项进行介绍。
  示例:
  1.无选项设置情况
    # echo $A | tr',' ' '  
    1 2   3   4   5
  
    # echo $A | tr
  
    1,,b,,,c,,,d,,,5
  
    # echo $A | tr "23""bc"
  
    1,,b,,,c,,,4,,,5
  注意,这里不是对字符串的替换,而是将“2”替换为“b”,“3”替换为“c”。
  常用:小写 --> 大写
    # tr   2.选项“-s”,删除所有重复出现字符序列,只保留第一个,即将重复出现字符串压缩为一个字符串。
    #echo $A | tr -s ','  
    1,2,3,4,5
  
    #echo $A | tr -s ',' ' '
  
    12 3 4 5
  3.选项“-d”,删除字符串指定的所有输入字符。
    #echo $A | tr -d "23"  
    1,,,,,,,,4,,,5
  
    #echo $A | tr -d','
  
    12345
  常用:删除Windows文件中的'^M'字符
    # tr -d"/r"  4.选项“-c”,对字符串中字符集的补集做替换,要求字符集为A S C I I。
    # echo $A | tr -c ‘%’  
    1%%2%%%3%%%4%%%5


页: [1]
查看完整版本: shell学习之tr命令