位置: 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 中未找到或丢失的错误(如何修复面部毛孔粗大)

  • 微信换手机了聊天记录能找回来吗(微信换手机了聊天怎么办)

    微信换手机了聊天记录能找回来吗(微信换手机了聊天怎么办)

  • 斗鱼热度是人数吗(斗鱼热度和实际人数)

    斗鱼热度是人数吗(斗鱼热度和实际人数)

  • 苹果x厚度是多少(苹果x厚度不一样吗)

    苹果x厚度是多少(苹果x厚度不一样吗)

  • 滴滴口碑值是什么意思(滴滴口碑值什么时候更新一次)

    滴滴口碑值是什么意思(滴滴口碑值什么时候更新一次)

  • 手机qq音乐怎么添加本地音乐(手机qq音乐怎么关闭自动播放)

    手机qq音乐怎么添加本地音乐(手机qq音乐怎么关闭自动播放)

  • airpods连不上蓝牙(airpods连不上蓝牙手机怎么回事)

    airpods连不上蓝牙(airpods连不上蓝牙手机怎么回事)

  • 微信封31天能解除吗(微信封30天怎么马上解)

    微信封31天能解除吗(微信封30天怎么马上解)

  • 相机专业模式的英文都是什么意思(相机专业模式的s)

    相机专业模式的英文都是什么意思(相机专业模式的s)

  • 空气切割机是什么镜头(空气切割是不是空气斩)

    空气切割机是什么镜头(空气切割是不是空气斩)

  • 淘宝属于腾讯吗(淘宝是不是属于腾讯的)

    淘宝属于腾讯吗(淘宝是不是属于腾讯的)

  • 健康码怎么打卡不了了(健康码怎么打卡微信)

    健康码怎么打卡不了了(健康码怎么打卡微信)

  • 华为手机怎么退出盲人模式怎么解除(华为手机怎么退出屏幕朗读模式)

    华为手机怎么退出盲人模式怎么解除(华为手机怎么退出屏幕朗读模式)

  • qq显示忙碌是啥意思(qq显示忙碌是啥原因)

    qq显示忙碌是啥意思(qq显示忙碌是啥原因)

  • 虎牙直播怎么看不了(虎牙直播怎么看直播间有多少人)

    虎牙直播怎么看不了(虎牙直播怎么看直播间有多少人)

  • 打印机离线状态怎么办(打印机离线状态怎么回事)

    打印机离线状态怎么办(打印机离线状态怎么回事)

  • system什么程序(system_)

    system什么程序(system_)

  • meid码能监控整个手机吗(meid泄漏可监控上网行为)

    meid码能监控整个手机吗(meid泄漏可监控上网行为)

  • 小米10出厂有贴膜吗(小米10出厂贴膜怎么撕)

    小米10出厂有贴膜吗(小米10出厂贴膜怎么撕)

  • gpu渲染是什么意思(gpu渲染是什么意思呀)

    gpu渲染是什么意思(gpu渲染是什么意思呀)

  • 微信缩略图可不可以删除(微信缩略图可不可以恢复)

    微信缩略图可不可以删除(微信缩略图可不可以恢复)

  • 苹果自带耳机怎么切下一首(苹果自带耳机怎么样)

    苹果自带耳机怎么切下一首(苹果自带耳机怎么样)

  • 荣耀20s和荣耀20对比(荣耀20s和荣耀20se有区别吗)

    荣耀20s和荣耀20对比(荣耀20s和荣耀20se有区别吗)

  • qq人工服务电话是多少(qq人工服务电话多少)

    qq人工服务电话是多少(qq人工服务电话多少)

  • 华为荣耀10怎么打开gps定位(华为荣耀10怎么录屏)

    华为荣耀10怎么打开gps定位(华为荣耀10怎么录屏)

  • 小米10手机啥时候上市(小米手机啥时候出新款)

    小米10手机啥时候上市(小米手机啥时候出新款)

  • 红米微信视频怎么美颜(红米微信视频怎么美颜功能)

    红米微信视频怎么美颜(红米微信视频怎么美颜功能)

  • 魅族16s怎么关机(魅族16关机键设置)

    魅族16s怎么关机(魅族16关机键设置)

  • win10安全中心通知怎么关闭(win10安全中心通知关闭)

    win10安全中心通知怎么关闭(win10安全中心通知关闭)

  • 小茴香的养殖种植方法(小茴香的栽培技术)

    小茴香的养殖种植方法(小茴香的栽培技术)

  • 基础数据类型之集合(基础的数据类型)

    基础数据类型之集合(基础的数据类型)

  • 捐赠免税会计分录
  • 企业纳税申报表怎么查询
  • 加工企业税收优惠政策
  • 耕地占用税税率变化历程
  • 会计核算职能有哪些特征
  • 财产租赁合同金额含税吗
  • 出差会议纪要模板
  • 控股股权转让
  • 营改增后建安企业账务处理
  • 企业分立房产税税收政策
  • 营改增后不动产销售增值税 5%还是9%
  • 公司的钱怎么转出来
  • 保险营销员的佣金怎么算个税
  • 征缴工会筹备金的规定
  • 试生产期间的账务处理
  • 上月销售的货物会计分录
  • 变动成本主要包括
  • ppt另存为在哪儿
  • win10如何关闭自动修复
  • 使用最新版本的浏览器可以防御黑客
  • macbook 怎么换壁纸
  • php基础函数
  • 只有收据没有发票可以保修吗
  • 2022年苹果iphone14视频配音乐
  • 工程施工暂估成本的账务处理流程
  • postman如何设置token
  • 无偿转让股权如何做账
  • 企业收入的具体表现
  • 招标单位收取标书费多少钱
  • 售后租回交易形成融资租赁会计处理
  • 取得增值税发票的认证期限是多久?
  • 怎样把htm文件转成excel
  • 待报解预算收入是社保扣费吗
  • php -r
  • php redis常用命令
  • 图像风格迁移网站
  • 怎么才能学a1
  • 应收账款期末余额在借方还是贷方
  • 应收账款0
  • sqlserver2008安装教程(超完整)
  • mysql存储过程cursor
  • 硬盘录像机开发票属于哪一类
  • 企业不交所得税的情况
  • sql server2003
  • 一次性扣除固定资产出售处理
  • 阶段性减免企业社保费实施政策对象
  • 公司分期付款购车如何做账
  • 社保阶段性减免范围
  • 解除劳动合同经济补偿金法律依据
  • 去税务局核定税种多久生效
  • 退客户多余货款怎么处理
  • 增值税留抵怎么做凭证
  • 建筑劳务没有合同能起诉吗
  • 集资建房有维修基金吗
  • 税审报告一定要税所主任签吗
  • 设计会计凭证
  • 怎样银行存款,预付帐款,应收帐款余额做资金平衡表
  • dos命令win10
  • windows server 2008 r2最大支持内存
  • mac10.15系统
  • 如何给windowsXP磁盘加密码
  • mac修改java版本
  • ipcservice.dll是什么?
  • win7升win8要钱吗
  • w10 2021年更新
  • javascript数据结构
  • javascript语句大全
  • unity3d需要购买吗
  • javascriptcall和apply
  • 通过手机号怎么查对方的位置
  • jquery日程安排
  • etmvc+jQuery EasyUI+combobox多值操作实现角色授权实例
  • windows2003服务器管理器在哪里
  • node的使用场景
  • 在linux的主要组成部分中最基础的是哪一项?
  • 如何控制孩子的手机使用时间
  • jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
  • 普票怎么入账标识
  • 陕西国家税务总局官网登录入口
  • 厦门税务查询地址不符怎么处理
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设