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

相关推荐

  • Linux命令学习

    阅读目录 Linux cat命令 file命令 dd命令 hexdump命令 cat命令   cat三大功能:      1.一次显示整个文件:cat filename      2.从键盘创建一个文件:cat > filename 注意只能创建新文件,…

    Linux干货 2017-07-16
  • 20160802课堂作业

    作业: 在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。 #groupadd g1 #groupadd g2 #groupadd g3 #useradd -G g2 alice #useradd -G…

    Linux干货 2016-08-04
  • 第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;grep “^[[:space:]]+”  /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;[root@localhost ~…

    Linux干货 2017-03-10
  • Redis学习手册(持久化)

    一、Redis提供了哪些持久化机制:     1). RDB持久化:     该机制是指在指定的时间间隔内将内存中的数据集快照写入磁盘。         2). AOF持久化:     该机制将以日志…

    Linux干货 2015-02-25
  • 使用CDN后,PHP如何获取用户的真是IP?

    在统计访问日志参数的时候IP是一个重要的参数,所有索取客户端的IP就至关重要。 在logformat配置中有两个变量是获取IP地址的: remoteaddr:客户端IP xforwardedfor:客户端的IP 从上面来看两个都是客户端IP,那这两个变量有什么不同? 首先当你访问某个网站,假设你中间不经过任何代理,那么webserver就会把remotead…

    Linux干货 2015-12-21
  • linux分区管理工具—fdisk

    一、关于为什么要分区       (1)为了数据的安全:当文件系统只有一个分区时,如果遇到分区需要格式化的情况,则硬盘里的数据无法保留,而如果提前对硬盘做了分区那么就可以很好地额解决这个问题;       (2)为了提升效率:硬盘(这里单指机械硬盘)分为外圈和…

    Linux干货 2016-03-12