tr命令
tr命令是linux下一个字符处理命令,用途:
字符替换
字符删除
字符压缩
形式:tr [OPTION]... SET1 [SET2]
接口:输入输出都是标准流,所以要通过管道来调用这个命令
参数:
-c 对SET1取补集,在进行一切操作之前,对SET1取补集.
-d 删除SET1中的全部字符,不进行字符替换
-s 压缩重复字符,例如wweeedd压缩之后变成wed
-t 对SET1进行截断,使之与SET2等长
字符删除和字符替换两个功能不可共用,只能选择其一来用(字符替换只发生在没有-d参数且SET1和SET2都出现时).字符压缩和字符删除可以共用,字符压缩和字符替换可以共用.
-t只能用于字符替换.进行字符替换时,如果SET2偏长,那就截断到与SET1等长;如果偏短,那就重复SET2的最后一个字符,直到与SET1等长.
用-s压缩重复字符时,如果没使用删除字符和替换字符这两个功能,那就用SET1来压缩.否则,先进行删除或者替换,然后按照SET2进行压缩字符.
-c和-t这两个命令就是对SET1进行一下处理.
例子:
x='1212334341223'
echo $x | tr 1234 abcd 把1转换成a,把2转换成b,把3转换成c,把4转换成d
字符集的表示方法
支持转义:\NNN(3位八进制表示ascii码),c语言里面的转义基本都支持,如响铃\a,退格\b,换行\n,回车\r,制表\t\v.
CHAR1-CHAR2:从CHAR1到CHAR2之间的全部字符
预定义的表示方法
[:alnum:]字母集+数字集
[:alpha:]字母集,[:upper:]和[:lower:]大小写字符集
[:digit:]数字集,[:xdigit:]十六进制字符集
[:blank:]水平空字符集,[:space:]水平空字符集+竖直空字符集
[:cntrl:]控制字符集
[:print:]一切可打印的字符,[:graph:]除空格外的全部可打印字符
[:punct:]符号集
tr命令的更多相关文章
- Linux tr命令
介绍 tr命令可以对来自标准输入的字符进行替换.压缩和删除.tr只能接收来自标准的输入流,不能接收参数. 语法 tr [OPTION]... SET1 [SET2] 注意:SET2是可选项 OPTIO ...
- linux sort,uniq,cut,wc,tr命令详解
sort是在Linux里非常常用的一个命令,对指定文件进行排序.去除重复的行 sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sor ...
- linux tr命令详解
通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个字符,或者可以完全除去一些字符.您也可以用它来除去重复 ...
- tr 命令 操作字符串中字符 删除替换 等
ip=$(cat ${path}initOauth/initinfo.txt |awk '{if(NR==1)print $0;}'|tr -d '\r'); tr命令可以对来自标准输入的字符进行替换 ...
- 《tr命令-优化版》-linux命令五分钟系列之二十五
本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. ...
- 《tr命令》-linux命令五分钟系列之六
本原创文章属于<Linux大棚>博客. 博客地址为http://roclinux.cn. 文章作者为roc 希望您能通过捐款的方式支持Linux大棚博客的运行和发展.请见“关于捐款” == ...
- tr命令的使用
tr是translate的简写,亦即翻译,但是遗憾的是,它不能翻译句子,只能翻译单个字符. 1 tr的工作原理是什么? 先记住一点,tr命令不接受指定的文件参数,而只是对标准输入进行翻译.好了,记住这 ...
- Linux tr 命令使用
man tr: TR(1) User Commands TR(1) NAME tr - translate or delete characters SYNOPSIS tr [OPTION]... S ...
- linux的tr命令
tr(translate缩写)主要用于删除文件中的控制字符,或进行字符转换. 语法 tr [ -c | -cds | -cs | -C | -Cds | -Cs | -ds | -s] [ -A] S ...
随机推荐
- Python字符串的编码与解码(encode与decode)
首先要搞清楚,字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unico ...
- linux-3.14.13 看到mpls gso支持
在net/Kconfig source "net/mpls/Kconfig"
- svn使用--all-static编译,移植到其它系统上可能使setlocale等GLIBC相关库函数调用失败
svn: Can't convert string from 'UTF-8' to native encoding
- 配置nginx好了,html能打开,index.php打不开?
启动这2个 #service nginx restart # service php-fpm restart
- Security Tools (Contain CTF tools)
From now on I will start to have fun with CTF and other security games or challenges. And I am going ...
- csu 1812: 三角形和矩形 凸包
传送门:csu 1812: 三角形和矩形 思路:首先,求出三角形的在矩形区域的顶点,矩形在三角形区域的顶点.然后求出所有的交点.这些点构成一个凸包,求凸包面积就OK了. /************** ...
- 如何通过JQuery将DIV的滚动条滚动到指定的位置
这里有一个方法可以将DIV的滚动条滚动到其子元素所在的位置,方便自动定位. var container = $('div'), inner = $('#inner'); container.scrol ...
- 第15章 设备无关位图_15.3 DIB和DDB的结合
第15章 设备相关位图_15.3 DIB和DDB的结合 15.3.1 从DIB创建DDB (1)hBitmap =CreateDIBitmap(…)——注意这名称会误导,实际上创建的是DDB 参数 说 ...
- SQL连接查询
连接查询:通过连接运算符可以实现多个表查询.连接是关系数据库模型的主要特点,也是它区别于其它类型数据库管理系统的一个标志. 常用的两个链接运算符: 1.join on 2.union 在关系数据库 ...
- 嵌入式linux根文件系统制作
编译Busybox 从http://www.busybox.net/downloads/下载busybox工具.这里我们下载的上最新版: busybox-1.24.2.tar.bz2 解压Busybo ...