linux系统下tr命令详解


本文摘自PHP中文网,作者齐天大圣,侵删。

今天想和大家介绍下1个非常常用的命令――tr。这个命令可以用来替换字符串、删除指定字符以及将多个重复字符压缩只剩一个,除此之外,该命令是支持管道的。从上面的功能介绍,大家应该能够感受到该命令功能非常的强大。

下面,来介绍下该命令:

1

tr [选项] 参数

常用选项如下:

  • -c 后接字符范围,表示除这些字符之外的字符

  • -d 删除指定字符

  • -s 将重复字符压缩只剩一个

下面通过几个案例来学习如何使用该命令

字符串替换

这个是最基本功能,没有添加任何选项时,则表示字符串替换,命令格式为:

1

tr 原字符串 需替换成的字符串

这里,我们还经常用到-符号,它表示连续的意思。下面来看案例:

1

2

3

# 字符串替换,将小写字母替换为大写字母

# echo hello,world | tr [a-z] [A-Z]

HELLO,WORLD

删除字符

通过选项-d来删除指定的字符,通过-d -c选项可以用来保留指定的字符。下面来看案例

1

2

3

4

5

6

7

# 删除指定字符ae

# echo 'There are apples' | tr -d 'ae'

Thr r ppls

 

# 删除指定字符,只保留数字和字母及换行符,其他的字符全部删除

# echo 'sSwd,aw23e;sw aswe' | tr -d -c 'a-zA-Z0-9\n'

sSwdaw23eswaswe

压缩字符

这个功能非常的常用,它可以来将连续重复的字符压缩成只留一个。我们经常用它来删除连续的空格只留一个空格,删除连续的换行符只留一个换行符。想要完成压缩字符的功能,需要使用-s选项。

1

2

3

# 删除连续的空格只留下一个(我们也经常删除连续的换行符只留一个)

# echo -e "hello    world.\n\n\n" | tr -s ' \n'

hello world.

上面的几个例子比较简单,可能看不出这个命令的威力,下面再来看几个稍微复杂点的案例。

我们知道,cut对于连续空格的处理不是很擅长。如果想用cut来选取df命令显示结果的第二列,是办不到的。这个时候,如果首先使用tr命令将多个连续空格压缩成一个,那么cut命令就能够来满足需要了。

1

2

3

4

5

6

7

8

# df -h | tr -s ' \t' | cut -d ' ' -f 2

Size

40G

487M

497M

497M

497M

100M

可以看到,通过tr的处理,cut现在能够获取到第二列信息了。

tr这个命令功能很强大,用法非常的简单,希望大家都能掌握并应用它。

以上就是linux系统下tr命令详解的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

Linux如何运行c程序命令

Linux中如何查看文件的行数、单词数与字符数

Linux 系统查看用户组

Linux系统如何打开rar格式的压缩文件

Linux下如何设置用户密码永不过期

Linux怎么创建新用户和设置密码

Linux系统怎么安装swoole

Linux判断是否是文件

Linux怎么设置ip

Linux内核主要模块有什么

更多相关阅读请进入《Linux》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...