位置: IT常识 - 正文

Linux系统中tr命令的基本使用教程(linux tr)

编辑:rootadmin
这篇文章主要介绍了Linux中用于替换或删除字符的tr命令学习教程,tr命令多被用于替换或删除字符,对于文本的修改和输出有着很大的帮助,需要的朋友可以参考下... 16-03-05

推荐整理分享Linux系统中tr命令的基本使用教程(linux tr),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux tr命令详解,linux trim命令,linux tr命令详解,linux trim命令,linuxtr命令,linux tr,linux中的tr命令,linux tr命令详解,内容如对您有帮助,希望把文章链接给更多的朋友!

用法:tr [选项]... SET1 [SET2]从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。

-c, -C, --complement 首先补足SET1 -d, --delete 删除匹配SET1 的内容,并不作替换 -s, --squeeze-repeats 如果匹配于SET1 的字符在输入序列中存在连续的 重复,在替换时会被统一缩为一个字符的长度 -t, --truncate-set1 先将SET1 的长度截为和SET2 相等 --help 显示此帮助信息并退出 --version 显示版本信息并退出

SET 是一组字符串,一般都可按照字面含义理解。解析序列如下:

\NNN 八进制值为NNN 的字符(1 至3 个数位) \\ 反斜杠 \a 终端鸣响 \b 退格 \f 换页 \n 换行 \r 回车 \t 水平制表符 \v 垂直制表符 字符1-字符2 从字符1 到字符2 的升序递增过程中经历的所有字符 [字符*] 在SET2 中适用,指定字符会被连续复制直到吻合设置1 的长度 [字符*次数] 对字符执行指定次数的复制,若次数以 0 开头则被视为八进制数 [:alnum:] 所有的字母和数字 [:alpha:] 所有的字母 [:blank:] 所有呈水平排列的空白字符 [:cntrl:] 所有的控制字符 [:digit:] 所有的数字 [:graph:] 所有的可打印字符,不包括空格 [:lower:] 所有的小写字母 [:print:] 所有的可打印字符,包括空格 [:punct:] 所有的标点字符 [:space:] 所有呈水平或垂直排列的空白字符 [:upper:] 所有的大写字母 [:xdigit:] 所有的十六进制数 [=字符=] 所有和指定字符相等的字符

仅在SET1 和SET2 都给出,同时没有-d 选项的时候才会进行替换。仅在替换时才可能用到-t 选项。如果需要SET2 将被通过在末尾添加原来的末字符的方式补充到同SET1 等长。SET2 中多余的字符将被省略。只有[:lower:] 和[:upper:]以升序展开字符;在用于替换时的SET2 中以成对表示大小写转换。-s 作用于SET1,既不替换也不删除,否则在替换或展开后使用SET2 缩减。

tr命令中的参数 -c 比较实用,可以用字符串1中字符集的补集替换此字符集,要求字符集为A S C I I。然后在终端上试了一条命令:

代码如下:tr -cs "[a-z][A-Z]" "[\012*]" <diary.txt

这是将文件 diary.txt 内的非字符数据转换成换行符,然后用 -s 选项删除所有重复出现字符序列,只保留第一个;即将重复出现字符串压缩为一个字符串。

后来仔细看这条命令时,发现在 \012 后面加了个 * ,当我去掉这个 * 时,再运行,发现得出的结果全在同一行,并且用 ] (左中括号)隔开,然后我又试着 用 \n 代替 \012,发现也是只有在 \n 后加 * 才得出正确的结果。后来将中括号去掉。这是不要 * 时可以输出正确结果,发而加了 * 后会将结果都输出在一行,中间用 * 隔开。

猜想:是否在加中括号后,里面的特殊字符后都要加 *,无论是用字母表示的,还是用八进制数表示的。

Linux系统中tr命令的基本使用教程(linux tr)

下面再举一些例子:

代码如下:[root@localhost zhangy]# echo "TANK" |tr A-Z a-z #大写字母转小写

tank

代码如下:[root@localhost zhangy]# echo 'tank zhang' | tr a-z A-Z #小写字线转大写

TANK ZHANG

代码如下:[root@localhost zhangy]# cat aaa.txt #原文件

aaa

bbb

代码如下:[root@localhost zhangy]# cat aaa.txt|tr 'a' 'c' #字母c替换字母a

ccc

bbb

代码如下:[root@localhost zhangy]# cat aaa.txt|tr -d 'a' #删除所有字母a

bbb

代码如下:[root@localhost zhangy]# cat aaa.txt|tr -d '\n\t' 删除文件file中出现的换行'\n'、制表'\t'字符

aaabbb

代码如下:[root@localhost zhangy]# cat aaa.txt|tr -s [a-zA-Z] #删除重复的字母

a

b

代码如下:[root@localhost zhangy]# cat aaa.txt|tr -s '\n' #删除空行

aaabbb

代码如下:[root@localhost zhangy]# cat aaa.txt |tr -s '\011' '\040' #用空格符\040替换制表符\011

aaa

bbb

代码如下:# tr a c < test #将test文件中的a变成c
本文链接地址:https://www.jiuchutong.com/zhishi/278397.html 转载请保留说明!

上一篇:Win10组策略阻止了这个程序怎么办(组策略阻止了这个程序0x800704ec)

下一篇:如何修复Crypt32.dll 在 Windows 11/10 中未找到或丢失的错误(如何修复面部毛孔粗大)

  • 在校大学生可以考教师资格证吗
  • 市政绿化工程的施工方案
  • 车船税放在哪个科目核算
  • 冲减暂估成本的会计分录
  • 小型企业利润表
  • 房地产土地使用税已售面积如何减
  • 发生非正常损失的购进货物不准予抵扣的增值税
  • 无形资产应当按照公允价值进行初始计量吗
  • 长期借款借方登记归还的本金和利息
  • 新公司法注册资本认缴制
  • 购进货品未取得发票如何处理
  • 冲减上年的所得税费用入什么科目?
  • 一般纳税人进货收到普通发票
  • 会务费 发票
  • 个人在电商平台购买跨境商品需要缴纳什么税
  • 企业所得税清算是什么意思
  • 货运发票和提供建筑服务的专票备注怎么写?
  • 小规模农产品可以抵扣吗
  • 2019年化妆品
  • 贷款服务开票开具要求
  • 店铺员工证费用计入什么科目?
  • 房产评估价偏低
  • mac显示器颜色不正常
  • arp防火墙是什么意思
  • 总公司欠分公司钱不偿还了怎么做账
  • 企业租房费用可以计入成本吗
  • 个人独资企业怎么做账
  • 资金集中度指标公式
  • php如何实现自动加载
  • 手撕代码是啥意思
  • php array 函数
  • WordPress 浏览量修改
  • Navicat for MySQL 15 v15.0.27 中文企业正式版(附安装教程) 32/64位 破解版
  • 资产证券化会计处理案例
  • 处置子公司利润表怎么处理
  • file file=new file()的作用
  • 网站用masonry瀑布流无限加载重叠解决方法
  • mongodb4.4.2安装教程
  • 工会经费支出实施细则
  • 清卡后还可以勾选发票吗
  • 修理费账务处理
  • db2pd 命令
  • mysql主从配置详解
  • 简述税收筹划的意义
  • 小规模纳税人技术维护费可以抵扣吗
  • 收到土地使用权转让怎么做账
  • 建筑业一般纳税人增值税税负
  • 应付职工薪酬中社保费怎么记账
  • 固定资产可资本化的后续支出
  • 应收账款可能出现贷方余额吗
  • 收到社保局返还的各类社保款项应从哪个表单发起
  • 手工账本应付账款怎么做
  • 征税体制
  • 利息专用发票可以抵扣吗
  • 酒店会计做账流程视频
  • 让windows server 2003 32位支持8G内存大内存
  • linux的telnet用法
  • vmware怎么放大虚拟机
  • win7命令提示符怎么打开
  • win10 sp3
  • win10系统怎么查询ip
  • excel2016 win7
  • linux和windows的区别?
  • es6 文档
  • opengl纹理错误变成条纹
  • js鼠标移入事件
  • html5+javascript实现简单上传的注意细节
  • linux timeline
  • [置顶]bilinovel
  • unity3d怎么用
  • nodejs 路由
  • node.js express koa
  • jquery增删改查方法
  • 在文件中偏移量为
  • 在python中通过什么语句创建一个空集合
  • 唐山宴订餐电话是多少
  • 税务工商指的是什么
  • 非营利组织认定条件
  • 国家税务总局关于税务机构改革有关事项的公告
  • 迅雷网站官网下载
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设