linux基础命令: tr

基础命令:  tr  

tr命令

功能:删除和转换字符

语法:tr  [OPTION]…. SET1  [SET2]

参数:

-d : 删除所有属于第一字符集的字符(删除某些特殊字符)

-s : 把连续重复的字符以单独一个字符表示(删除空行很有用)

举例:

1.把小写字母转换为大写字母;

cat  /etc/fstab  |  tr “a-z”  “A-Z”  #a-z转换为 A-Z

(把fstab中的小写字母替换为大写的)

[root@wCentos7 yuedir]# cat /etc/fstab | tr "a-z" "A-Z"
 
#
# /ETC/FSTAB
# CREATED BY ANACONDA ON THU JUL 21 11:22:48 2016
#
# ACCESSIBLE FILESYSTEMS, BY REFERENCE, ARE MAINTAINED UNDER '/DEV/DISK'
# SEE MAN PAGES FSTAB(5), FINDFS(8), MOUNT(8) AND/OR BLKID(8) FOR MORE INFO
#
UUID=B63A2F0C-C9F9-465D-B2B5-3830FEDCCDD2 /                       XFS     DEFAULTS        0 0
UUID=9DEC22F7-215E-4A47-97D1-AE09446D62D2 /BOOT                   XFS     DEFAULTS        0 0
UUID=A138A967-21DB-41E0-9A4A-7A5EB4979481 /TESTDIR                XFS     DEFAULTS        0 0
UUID=BB99272D-4848-49BD-A896-E5F843037CBF SWAP                    SWAP    DEFAULTS        0 0

 

2.删除字符集中的字符

echo “1asd2cvbg3nh4ttf5yyh6ujjh7jjik8kkk9lll0”  |  tr -d “a-z”

(tr删除包含在自定义字符集中的字符,保留我们需要的字符)

 

[root@wCentos7 yuedir]# echo “1asd2cvbg3nh4ttf5yyh6ujjh7jjik8kkk9lll0” | tr -d “a-z”
1234567890
[root@wCentos7 yuedir]#

 

3.替换特殊字符串

cat  /etc/fstab | tr “#” “ ” | tr -d “0-9”

(把fstab文件中的 # 替换成 @ ,并且删除所有的数字)

[root@wCentos7 yuedir]# cat  /etc/fstab | tr '#'  '@'  | tr -d '0-9'
@
@ /etc/fstab
@ Created by anaconda on Thu Jul  :: 
@
@ Accessible filesystems, by reference, are maintained under '/dev/disk'
@ See man pages fstab(), findfs(), mount() and/or blkid() for more info
@
UUID=bafc-cf-d-bb-fedccdd /                       xfs     defaults         
UUID=decf-e-a-d-aedd /boot                   xfs     defaults         
UUID=aa-db-e-aa-aeb /testdir                xfs     defaults         
UUID=bbd--bd-a-efcbf swap                    swap    defaults

小结:tr 命令还有很多的参数,也支持golb的字符集,这个可以参看下man tr,在使用过程中需要许多莫名奇怪的问题,比如:一个 # 号无法替换才 数字或字母,无法替换成 两个 @@或别的符号,或与关于tr的命令认识很少,以后有时间细细研究。 

原创文章,作者:linux_root,如若转载,请注明出处:http://www.178linux.com/27709

赞 (0)
linux_rootlinux_root
上一篇 2016-08-03 14:57
下一篇 2016-08-03 15:05

相关推荐

  • 马哥教育网络班第19期+第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 2、写一个脚本     (1) 获取当前主机的主机名,保存于hostname变量中;     (2) 判断此变量的值是否为localhost,如果是…

    Linux干货 2016-09-19
  • ☞Linux进程管理与性能分析

    Linux进程管理与性能分析 概述 系统维护的一个重要工作就是监控Linux系统的运行状态是否正常,分析系统资源的使用情况,进而对系统进行优化,提高其性能。在实际环境中,系统稳定性尤为重要,可以说系统的稳定性关系到企业的存亡。因此,第一时间掌握CPU、Memory、IO、Network的等系统资源的状态则可以在系统出现问题时及时解决,把损失降到最低。&nbs…

    Linux干货 2016-09-11
  • 第四周博客分享

                    时间匆匆,转眼来马哥已经快一个月了,这一个月对我来说是收获满满,每天都在学到新的东西。       &nbs…

    2017-08-06
  • Linux_创建文件系统及挂载文件系统流程详解

    Linux 创建文件系统及挂载文件系统流程详解 摘要:本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述;主要是为初学者弄清楚这一操作过程;本文涉及fdisk、mkfs、mount … … 等工具;对/etc/fstab 进行了解说;还有磁盘扫描工具fsck 等介绍; +++++++++…

    Linux干货 2016-01-18
  • 快速运用NFS共享web页面

    环境:centos7.3最小化三台,前期准备关闭防火墙和selinux 目的:通过文件共享,使客户端访问web服务器时是同样的页面。 拓扑图: 优势:减少WEB服务器的压力。 一、安装软件 NFS、WEB1、WEB2: #yum install nfs-utils -y WEB1、WEB2: #yum install httpd -y 二、配置 NFS: #…

    2017-04-27
  • 文本处理-三剑客-awk

    报告生成器,格式化文本输出
    awk [options] ‘BEGIN{ action;… } pattern{ action;… } END{ action;… }’ file …

    2018-03-16