tr命令

  从标准输入中替换、缩减或删除字符,并将结果写到标准输出。
tr [option] [SET1]  [SET2]
tr [选项]   [字符1]  [字符2]
 
-d    删除字符
-s    保留连续字符的第一个字符,删除其他字符
-c    使用第一个字符率(set1)的补集,取反
 
[root@cs6 ~]# cat lewen.txt
I am lewen student!
I love linux. I like badminton ball,billiard ball and chinese chess!
my blog is http://lewen.blog.51cto.com
our site is http://www.wenyule.top
my qq num is 846009315 not 8460009315
my god,i am not oldboy, but lewen!

将文件中出现的“abc”替换为“xyz”

[root@cs6 ~]# tr 'abc' 'xyz' <lewen.txt    #<== tr命令接文件比较特殊,需要输入重定向符号“<”。
I xm lewen student!
I love linux. I like yxdminton yxll,yillixrd yxll xnd zhinese zhess!
my ylog is http://lewen.ylog.51zto.zom
our site is http://www.wenyule.top
my qq num is 846009315 not 8460009315
my god,i xm not oldyoy, yut lewen! 凡是在文本中出现的“a”均应转换成“x”,“b”均应转换成“y”,“c”均应转换成“z”,而不是仅仅将字符串“abc”替换为字符串“xyz”。
使用tr命令“统一”字母大小写
[root@cs6 ~]# tr '[a-z]' '[A-Z]' <lewen.txt
I AM LEWEN STUDENT!
I LOVE LINUX. I LIKE BADMINTON BALL,BILLIARD BALL AND CHINESE CHESS!
MY BLOG IS HTTP://LEWEN.BLOG.51CTO.COM
OUR SITE IS HTTP://WWW.WENYULE.TOP
MY QQ NUM IS 846009315 NOT 8460009315
MY GOD,I AM NOT OLDBOY, BUT LEWEN!
将数字0-9替换为a-j
[root@cs6 ~]# tr '[0-9]' '[a-j]' <lewen.txt
I am lewen student!
I love linux. I like badminton ball,billiard ball and chinese chess!
my blog is http://lewen.blog.fbcto.com
our site is http://www.wenyule.top
my qq num is iegaajdbf not iegaaajdbf
my god,i am not oldboy, but lewen!

删除文件中出现的lewen中的每个字符

[root@cs6 ~]# tr -d 'lewen' <lewen.txt
I am studt!
I ov iux. I ik badmito ba,biiard ba ad chis chss!
my bog is http://.bog.51cto.com
our sit is http://.yu.top
my qq um is 846009315 ot 8460009315
my god,i am ot odboy, but !
删除文件中出现的换行"\n",制表,"\t" 字符
[root@cs6 ~]# tr -d '\n\t' < lewen.txt
I am lewen student!I love linux.I like badminton ball,billiard ball and chinese chess!my blog is http://lewen.blog.51cto.comour site is http://www.wenyule.topmy qq num is 846009315not 8460009315my god,i am not oldboy, but lewen![root@cs6 ~]#

删除连续字符(-s)的例子

[root@cs6 ~]# echo 'llllleeeewwwweennn'|tr -s lewen    #<==使用-s参数将连续的字符压缩成一个。
lewen

取反功能(-c)的例子

[root@cs6 ~]# tr '0-9' '*' <lewen.txt
I am lewen student!
I love linux. I like badminton ball,billiard ball and chinese chess!
my blog is http://lewen.blog.**cto.com
our site is http://www.wenyule.top
my qq num is ********* not **********
my god,i am not oldboy, but lewen! [root@cs6 ~]# tr -c '0-9' '*' <lewen.txt #<==使用参数-c,除了数字,其他的字符包括换行符都会替换为*。
***********************************************************************************************************************51********************************************************846009315******8460009315************************************[root@cs6 ~]#
 
 
 

3.20 tr:替换或删除字符的更多相关文章

  1. tr 替换或删除字符

    1.命令功能 tr 从标准输入中替换,压缩间隔或者删除字符并从定向到标准输出. 2.语法格式 tr  option  SET1  SET2 参数 参数说明 -c 取代所有SET1中字符串 -d 删除所 ...

  2. linux(centos8):用tr替换或删除字符

    一,tr命令的用途 tr命令可以替换或删除文件中的字符 它从标准输入设备读取数据, 处理完成将结果输出到标准输出设备 说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnbl ...

  3. tr转换或删除字符

    字符处理命令:tr —— 转换或删除字符 逐个字符处理而不是处理单词的tr [OPTION]... SET1 [SET2]    -d: 删除出现在字符集中的所有字符 tr ab AB

  4. 【Linux基础】tr命令替换和删除字符

    1.tr命令 tr可以对来自标准输入的字符进行替换.压缩和删除,可以将一组字符变成另外一组字符.通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其 ...

  5. tr命令-转换和删除字符

    tr 转换和删除字符 支持标准输入 格式 tr [OPTION]...SET1[SET2] Translate, squeeze, and/or delete characters from stan ...

  6. tr 替换删除字符

    1.关于tr    通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能.您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个字符,或者可以完全除去一些字符.您 ...

  7. JAVA insert() 插入字符串 reverse() 颠倒 delete()和deleteCharAt() 删除字符 replace() 替换 substring() 截取子串

    insert() 插入字符串 StringBuffer insert(int index,String str) StringBuffer insert(int index,char ch) Stri ...

  8. 复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的 行首的空白字符及在vim中设置tab缩进为4个字符

    1.复制/etc/profile至/tmp/目录,用查找替换命令删除/tmp/profile文件中的 行首的空白字符 在命令模式下,使用正则表达式匹配 行首有空白字符行的模式:^[[:space:]] ...

  9. Linux常用基本命令:tr-替换或者删除字符

    tr命令 作用:从标准输入中替换,缩减或者删除字符,并将结果输出到标准输出 格式:tr [option] [set1] [set2] tr [选项] [字符1] [字符2] 把y替换m, o替换e,并 ...

随机推荐

  1. RE.从单链表开始的数据结构生活(bushi

    单链表 单链表中节点的定义 typedef struct LNode{ int data;//数据域 struct LNode *next;//定义一个同类型的指针,指向该节点的后继节点 }LNode ...

  2. linux下Mysql 8.0.19 编译安装

    1 前言 linux下安装MySQL的方式有很多种,包括以仓库的方式安装(yum,apt,zypper),以包的方式安装(rpm,deb),以docker方式安装,从压缩包解压安装,从源码编译安装,这 ...

  3. Mybatis3源码笔记(四)Configuration(续)

    1.pluginElement(root.evalNode("plugins")) 解析plugins节点(注册interceptorChain里记录对应的拦截器) private ...

  4. JDBC_01_JDBC基础概念

    JDBC 基础概念 JDBC 的本质 JDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类,使用这些接口和类,Ja ...

  5. 【Mybatis源码解析】- JDBC连接数据库的原理和操作

    JDBC连接数据库的原理和操作 JDBC即Java DataBase Connectivity,java数据库连接:JDBC 提供的API可以让JAVA通过API方式访问关系型数据库,执行SQL语句, ...

  6. Co-prime(容斥原理)

    Co-prime Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Su ...

  7. Rsync多模块复制、排除指定文件及目录以及数据无差异复制的应用实例

    在我的博客<Rsync 数据复制软件应用>中,拉取数据访问的都是服务器端的/backup 目录,当然我们在其他目录下拉取数据.而实现这种操作就是指多模块复制. 要实现多模块复制首先需要修改 ...

  8. 12- APP接口测试以及接口文档的分析

    什么是接口? 为什么要做接口测试? 接口测试流程 需求评审 需求分析 接口用例设计 执行测试用例 bug的定位于追踪 接口文档分析 接口文档分析:开发 内容: 1.接口名称 2.接口地址 3.支持方式 ...

  9. 判断post,ajax,get请求的方法

    判断post,ajax,get请求的方法 define('IS_GET',isset($_SERVER['REQUEST_METHOD']) ? $_SERVER['REQUEST_METHOD'] ...

  10. table边框完全去掉的方法

    表格中边框的显示 只显示上边框 <table frame=above> 只显示下边框 <table frame=below> 只显示左.右边框 <table frame= ...