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
删除或者更改文件中的字符串,这个指令一般需要两个字符集。
此命令的适用范围: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学习的平台,目前出来一个雏形,各位可以参考使用
链接:https://pan.baidu.com/s/1GOLVU2CbpBNGtunztVpaCQ 密码:n7bk