Linux基础命令---tr

271 阅读3分钟
原文链接: click.aliyun.com
tr
      删除或者更改文件中的字符串,这个指令一般需要两个字符集。
      此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
      tr  [选项]  set1  set2

2、选项列表
      --help
            显示帮助文档
      --version
            显示版本信息
      -c | -C | --complement
            使用SET1的补码
      -d | --delete
            删除字符集1中指定的内容
      -s | --squeeze-repeats
            将set1中重复出现的内容,替换成单次出现的内容
      -t | --truncate-set1
            首先将SET1按照SET2的长度截断

      集合指定为字符串。大多数人代表自己。解释序列是:
      \NNN,具有八进制值nnn的字符(1到3位八进制数字)
      \\,反斜线符号
      \a,可听BEL
      \b,(键盘的)退格键
      \f,换页
      \n,换行
      \r,返回
      \t,水平tab
      \v,垂直tab
      CHAR1-CHAR2,从CHAR 1到CHAR 2的所有字符按升序排列
      [CHAR*],拷贝set2中的字符,长度为set1的长度
      [CHAR*REPEAT],重复拷贝
      [:alnum:],所有字母和数字
      [:alpha:],所有字母
      [:blank:],所有的水平空白
      [:cntrl:],所有的控制字符
      [:digit:],所有的数字
      [:graph:],所有的可打印的字符,不包括空格
      [:lower:],所有的小写字母
      [:print:],所有的可打印字符,包括空格
      [:punct:],所有标点符号
      [:space:],所有的水平和垂直空格
      [:upper:],所有的大写字母
      [:xdigit:],所有的十六进制数字
      [=CHAR=],所有等价于CHAR的字符
      如果没有给出‘-d’,同时出现SET1和SET2,则会发生翻译。‘-t’只能在翻译时使用。通过在必要时重复SET1的最后一个字符,Set2被扩展到SET1的长度。Set2的多余字符将被忽略。只有[:lower:]和[:upper:]保证按升序展开;在set2翻译时使用,它们只能成对使用以指定大小写转换。‘-s’在不翻译或删除时使用SET1;压缩使用SET2,并在翻译或删除后发生。

3、实例
1)删除内容
      [root@localhost weijie]#  cat 1.c
      hello world, i am david. i love linux, love code.
      [root@localhost weijie]#  tr -d hello < 1.c        //将1.c的内容输出到tr,然后删除出现的字符
       wrd, i am david. i v inux, v cd.                   //这里并不是删除一个单词hello,而是删除出现的这5个字母
2)将文件中的小写字母替换成大写
      [root@localhost weijie]#  tr -s a-z A-Z < 1.c

      HELO WORLD, I AM DAVID. I LOVE LINUX, LOVE CODE.



做了一个Linux学习的平台,目前出来一个雏形,各位可以参考使用
链接: pan.baidu.com/s/1GOLVU2Cb…   密码:n7bk

4178a434b793f18ff7e0f285f98634611e3f707c