shell的tr命令
tr,translate的简写,即翻译的意思。主要用来从标准输入中通过替换或删除操作进行字符转换。只接受标准输入,不接受文件参数。
命令语法:
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 deeelaaave | tr -s [a-z]
结果为:
delave
2. 删除换行符 \n
# tr.txt Learning Linux It's so simple
1)删除多余换行符,即中间的那些空白
只是输出改变了而已,tr.txt 文件的内容还是原来一样。
cat tr.txt | tr -s "\n"
结果为:
Learning Linux
It's so simple
2)删除所有换行符
cat tr.txt | tr -d "\n"
结果为:
Learning LinuxIt's so simple
3. 大小写转换
echo "MY NAME IS DELAV" | tr -t [A-Z] [a-z]
结果为:
my name is delav
当然也可以小写转换成大写
4. 删除指定字符
# tr.txt Python 2015.9 - 2018.11
Linux 2016.4 - 2018.11
C 2013.9 - 2014.9
Golang 2018.11 -
[0-9]表示所有数字,[.] [\-] [ ] 分别表示 [点 横杠 空格 ] 三个字符,横杠需要添加转义符
cat tr.txt | tr -d "[0-9][.][\-][ ]"
结果为
Python
Linux
C
Golang
5. 字符补集替换
-c:用换行符替换掉除了字母外的所有字符;-s:删除多余的换行符
cat tr.txt | tr -cs "[a-z][A-Z]" "\n"
结果为:
Python
Linux
C
Golang
shell的tr命令的更多相关文章
- SHELL脚本--tr命令用法和特性全解
bash&shell系列文章:http://www.cnblogs.com/f-ck-need-u/p/7048359.html 1.1 简介 tr主要用于将从标准输入读取的数据进行结果集映射 ...
- [shell基础]——tr命令
(1) tr 字符替换 测试文本内容 # cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4. ...
- tar命令,重定向,正则表达式,添加删除用户,tr命令,sort排序
rpm包仅用于 redhat suse redflag 若是源代码包的话,那就都适用linux下面的备份,差不多就是用tar打包 tar命令用途:制作归档文件,释放归档文件格式:tar [选项]... ...
- shell脚本之tr命令使用
tr命令用来进行对标准输入的内容做替换.例如 # echo 'HELLO WORLD!!!' | tr "A-Z" "a-z" hello world!!! 这 ...
- Linux shell tr 命令详解
该随笔摘自 https://www.jb51.net/article/103892.htm Linux shell tr 命令详解 1. 用途 tr,translate的简写,主要用于压缩重复字符,删 ...
- linux常用命令(shell脚本常用命令)(grep、cut、sort、uniq、seq、tr、basename、dirname)
本章命令: 1 2 3 4 5 6 grep cut sort uniq seq tr 1.grep 作用:过滤文本内容 选项 描述 -E :--extended--regexp 模式是扩展正则表达式 ...
- shell tr命令
tr 命令可以对来自标准输入的字符进行替换.压缩和删除. tr 指令从标准输入设备读取数据,经过字符串转译后,将结果输出到标准输出设备. tr 常用参数 -c # 用字符串1中字符集的补集替换此字符集 ...
- shell tr命令的使用
http://fyan.iteye.com/blog/1172279 tr是translate的简写,亦即翻译,但是遗憾的是,它不能翻译句子,只能翻译单个字符. 1 tr的工作原理是什么? 先记住一点 ...
- linux sort,uniq,cut,wc,tr命令详解
sort是在Linux里非常常用的一个命令,对指定文件进行排序.去除重复的行 sort 命令对 File 参数指定的文件中的行排序,并将结果写到标准输出.如果 File 参数指定多个文件,那么 sor ...
随机推荐
- c++ 创建单项链表
建立单向链表 头指针Head 插入结点 //建立头结点 Head Head=p= malloc(sizeof( struct stu_data)); // memset(stu,,sizeof( st ...
- springboot-vue-JWT使用
springboot-vue-JWT使用 后端引入依赖: <dependency> <groupId>io.jsonwebtoken</groupId> <a ...
- iOS上架被拒理由及相关解决方案记录
注:苹果客服中国区电话:4006 701 855 最近公司上线一个电动车工具类项目,被拒无数次,今天上架了,记录一下 01 苹果拒绝理由(内购和后台定位) We noticed that your a ...
- Maven学习(十四)-----Maven 构建配置文件
Maven 构建配置文件 什么是构建配置文件? 生成配置文件是一组可以用来设置或覆盖 Maven 构建配置值的默认值.使用生成配置文件,你可以针对不同的环境,如:生产V/S开发环境自定义构建. 配置文 ...
- vue异步分页+初始化页面
html代码: <section class="container page-home"> <div id="main-content" cl ...
- 心中忐忑的跨进了Python的大门!
Hello!大家好,我是Jmmy 作为一个python初学者,抱着一种忐忑的心里走进了这扇让我有些胆怯的大门,因为零基础的缘故让我不得不再三去考虑学这门语言,英语.数学都是个渣的我,也许注定会止步门外 ...
- Phaser3 屏幕适配iPhoneX、iPhoneXs的坑 -- JavaScript Html5 游戏开发
PhaserJS 坑:在config内不要把 width 设为 window.innnerWidth在config内不要把 width 设为 window.innnerWidth在config内不 ...
- HDU-6315:Naive Operations(线段树+思维)
链接:HDU-6315:Naive Operations 题意: In a galaxy far, far away, there are two integer sequence a and b o ...
- python之奇思妙想
一.概述 本篇主要介绍自己平常所遇到的各种有趣的关于python的简短例子 二.正文 chapter 1 解决思路: s='{:,.2f}'.format(100000.0) print(s) cod ...
- 笔试题——C++字符排序
题目:字符排序 题目介绍:输入一组以空格隔开的字数串,将它们奇数位升序排序,偶数位降序排序,再重新输出成新的字数串. 例: 输入: 4 6 2 3 6 7 8 1 奇数位:4 2 6 8 ——2 4 ...