• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统
您的位置:首页 > 操作系统 >LINUX > Linux系统中tr命令的基本使用教程

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

作者:张映 字体:[增加 减小] 来源:互联网 时间:2017-05-12

张映 通过本文向大家介绍了linux系统中,linux系统中git命令,linux系统中链接分为,linux 系统中打开xls,linux系统中安装软件等相关知识,希望对您有所帮助,也希望大家多多支持linkedu.com

用法: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。然后在终端上试了一条命令:

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

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

下面再举一些例子:

bbb

bbb

bbb

b

bbb

</div>

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Linux系统中为php添加pcntl扩展
  • MySQL在Linux系统中隐藏命令行中的密码的方法
  • Linux系统中把文件拷贝到U盘的方法
  • linux系统中如何安装程序、软件的几种方法
  • Linux系统中tar压缩包怎么解压?
  • linux系统中怎么查看cpu信息?
  • linux系统中怎么结束boa进程?
  • linux系统中怎么实现文本界面转化为图形界面?
  • Linux系统中安装使用ntfs-3g挂载NTFS分区的教程
  • Linux系统中安装和使用Axel下载工具的教程

相关文章

  • 2017-05-12详解Linux系统中at与atq命令的用法
  • 2017-05-12Linux系统中备份和恢复文件权限设置的教程
  • 2017-05-12Linux中安装使用semanage来修改文本的教程
  • 2017-05-12速学linux命令教程
  • 2017-05-12在64位的Ubuntu系统上安装32位的WPS的方法
  • 2017-05-12Linux编程时出现Segmentation fault错误如何解决?
  • 2017-05-12Linux系统中tr命令删除和替换文本字符的基本用法
  • 2017-05-12Linux系统下OpenSSH的安装及基本配置文件详解
  • 2017-05-12Linux下获取公网IP地址的方法
  • 2017-05-12Linux的系统监控工具dstat常见用法总结

文章分类

  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统

最近更新的内容

    • Linux下配置Docker容器间网络连接的教程
    • 简单讲解Linux的文件系统及相关的挂载命令
    • 简介Linux系统的etc目录及其下的passwd文件
    • Linux date日期格式及加减运算
    • Linux下面使用命令如何运行.sh文件的两种解决办法
    • Linux内核模块编写详解
    • Linux系统下为Gitlab配置邮件提醒的方法详解
    • Linux Shell 常用命令与目录分区的学习总结
    • 在Linux中安装配置Postfix来搭建邮件发送服务
    • Linux下用于对比文件的diff命令使用教程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有