tr - translate or delete characters

tr命令用于转换或删除字符。

使用语法:

tr [–c/d/s/t] [SET1] [SET2]

-------------------------------------------------

SET1/SET2: 字符集

-c: complement,用SET2替换SET1中没有包含的字符

-d: delete,删除SET1中所有的字符,不转换

-s: squeeze-repeats,压缩SET1中重复的字符,即删除重复的字符

-t: truncate-set1,将SET1用SET2替换,一般缺省为-t

-c:complement,用SET2替换SET1中没有包含的字符

使用示例:

1、压缩重复字符串

注意:这里的压缩是指压缩连续出现的字符,不连续的相同字符不会删除

[~]$ echo caipengxiang | tr -s [a-z]

caipengxiang

[~]$echo ccccaippppengxxxxiang | tr -s [a-z]

caipengxiang

2、删除多余换行符

有一个test文件内容如下(文件中间有很多多余的空行):

#test

tr-translate

hello world

如果我们不需要多余的空行可以这么做:

[~]$cat test | tr -s "\n"

#test

tr-translate

hello world

不巧的是第一行的空行没有删除掉,这是因为第一行的"\n"没有其他的连续空行了。

我们直接删除所有换行试一下:

[~]$ cat test | tr -d "\n"

#testtr-translatehello world[~]$

显示的结果为:#testtr-translatehello world[~]$,这下可好,连最后一行的换行也删除了,导致和shell的提示符 [~]连接在一起了。

3、大小写转换

[~]$ echo "my name is caipengxiang" | tr -t [a-z] [A-Z]

MY NAME IS CAIPENGXIANG

4、删除指定字符

有test文件内容如下:

#test

tr-translate 2020-12-23

hello world 2020.12.23

执行如下命令删除空格、数字、点、横杠、空格(横杠需要转义):

[~]$cat test | tr -d "[0-9][.][\-][ ]"

#test

trtranslate

helloworld

5、字符补集替换

test文件还是以上的内容,执行如下命令:

[~]$cat test | tr -cs "[a-z][A-Z]" "\n"

test

tr

translate

hello

world

-c: 用换行符"\n"替换掉字母以外的所有字符;

-s:删除多余的换行符。

shell tr 替换 空格_shell tr命令相关推荐

  1. shell tr 替换 空格_SHELL脚本--tr命令用法和特性全解

    1.1 简介 tr主要用于将从标准输入读取的数据进行结果集映射.字符压缩和字符删除.它首先会将读取的标准输入进行排序然后按照某种方式换行,然后再根据给出的命令行参数做相关处理. tr [options ...

  2. shell tr 替换 空格_Shell 字符串分隔符!!!(全网最详细总结)

    前言: 在shell脚本编程中,我们经常会用到切割字符串,类似于python中的split.但shell中的命令比较五花八门,小编也是苦扰了很久,终于下定决心对它做一个总结. 方法一:字符串替换法 # ...

  3. shell实现替换空格

    去除空格: a="12 jk 234 eikal" echo $a |sed 's/[[:space:]]//g' echo $a |sed "s/ //g" ...

  4. sed shell 替换空格_shell三剑客之sed!

    背景 sed(Stream Editor 流编辑器),作为三剑客的一份子,主要的功能有增删改查. 为什么称之为"流"编辑器呢? 大家知道:在Linux文件系统中,一切都可以作为文件 ...

  5. shell命令:tr替换命令

    一般替换,将每个字符替换为相同位置对应字符: echo "aabbaabb" | tr "ab" "12" #11221122 echo & ...

  6. shell脚本的字符处理tr和cut和字符串替换${parameter//pattern/string}

    目录 1. tr 2.${parameter//pattern/string} 3.cut命令 对于TR和CUT命令都可以用管道直接级联使用:先给出例子如下: echo x.yy.x@x@s%a | ...

  7. linux tr 变量大小写,使用tr命令快速达到大小写互换——深圳培训linux

    本文,主要讲的是Linux利用tr命令轻松实现大小写转换,深圳培训linux希望通过本文的学习,大家都能实现利用tr命令轻松实现大小写转换.系统工程师有时候在系统维护的时候,需要将某个文件中的内容进行 ...

  8. 【shell】shell脚本的文本替换工具-tr

    文章目录 tr命令介绍 常见参数 常用命令展示 1. 将输入的字符小写换成大写 2. 实现对密码加密 3. 使用tr删除字符 4. 删除多余的空行 5. 将小写变成大写 总结 tr命令介绍 tr是一个 ...

  9. shell脚本删除冒号空格_shell脚本如何删除指定字符串,文档如下:

    展开全部 用正则匹配e68a8462616964757a686964616f31333361313338就可以了. shell脚本regex正则表达式 和 字符串替换 任意字符 ^行首匹配 $行尾匹配 ...

最新文章

  1. SCVMM 2008 R2 SP1 快速修改动态内存
  2. IOS NSInvocation应用与理解
  3. HTML5本地存储localstorage
  4. 窗体添加阴影效果如此简单
  5. lsm tree java_LSM-tree 基本原理及应用
  6. set Autotrace的使用
  7. JZOJ5944信标
  8. C语言获取某个文件中一行内容中指定字符串后的值
  9. jqgrid如何渲染表格数据_Jqgrid入门-操作表格的数据(二)
  10. java servlet,action,struts,struts2输出流中文编码问题
  11. POJ 3414 Pots【BFS水】
  12. python中filter是什么意思_求能人解答python filter()和filter_by()区别是什么
  13. 大华平台linux命令,大华平台软件简介.docx
  14. python简单代码恶搞-python—做一个恶搞程序
  15. SATA学习笔记 14 ---SATA PM
  16. 跨境电商:YouTube视频营销必看攻略
  17. 跨期套利交易系统策略
  18. 如何制作unity艺术字体
  19. 网络无法找到计算机6,手机可以搜到WiFi6路由器的信号,电脑却搜不到这是怎么回事?...
  20. 美国计算机专业gre314,美国东北大学计算机专业CS硕士录取

热门文章

  1. SQL Server 2008 阻止保存要求重新创建表的更改
  2. HarmonyOS之常用布局StackLayout的使用
  3. 利用一根同轴电缆互连主机构成以太网,则主机间的通信方式为( )
  4. 数据库开发——MySQL——单表查询
  5. 2018年第九届蓝桥杯C/C++ C组国赛 —— 第四题:约瑟夫环
  6. ZYAR20A 亚克力2驱 蓝牙 298寻迹避障机器人 —— 小车黑线循迹红外避障综合实验
  7. 使用C++实现YUV格式图像与RGB格式图像之间相互转换
  8. 【机器视觉】 dev_update_var算子
  9. 【ARM】ARM流水线技术
  10. 【Qt5.8】Qt5.8中串口信息类QSerialPortInfo