Linux面试指令---tr指令

本文详细介绍了tr命令的功能和用法,包括如何使用tr命令进行字符替换、删除和转换,以及一些实用的例子,如文本大小写转换、数字删除和ROT13加密解密。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

tr 命令

       tr 命令常被用来更改字符。我们可以把它看作是一种基于字符的查找和替换操作。换字是一种把字符从一个字母转换为另一个字母的过程。tr 从标准输入中替换、缩减和/或删除字符,并将结果写到标准输出。tr 只能通过 stdin(标准输入),而无法通过命令行参数来接受输入。tr 是 translate(转换)的缩写。

(1)命令格式

         tr [选项] SET1 SET2

        将来自 stdin 的输入字符从 SET1 映射到 SET2,并将其输出写入 stdout(标准输出)。SET1 和 SET2 是字符类或字符集。如果两个字符集的长度不相等,那么 SET2 会不断重复其最后一个字符,直到长度与 SET1 相同。如果 SET2 的长度大于 SET1,那么在 SET2 中超出 SET1 的那部分字符则全部被忽略。

(2)常用参数

参数描述
-d删除匹配 SET1 的内容,并不作替换

(3)常用范例

         例一:将输入的字符大写转换为小写,可以使用如下命令:

echo 'THIS IS SHIYANLOU!' | tr 'A-Z' 'a-z'

         例二:将输入的字符中的数字删除,可以使用如下命令:

echo 'THIS 123 IS S1HIY5ANLOU!' | tr -d '0-9' 

        例三:tr 命令的一个有趣的用法是执行 ROT13 文本编码。ROT13 是一款微不足道的基于一种简易的替换暗码的加密类型。把 ROT13 称为“加密”是大方的,“文本模糊处理”更准确些。有时候它被用来隐藏文本中潜在的攻击内容。这个方法就是简单地把每个字符在字母表中向前移动 13 位。因为移动的位数是可能的 26 个字符的一半,所以对文本再次执行这个算法,就恢复到了它最初的形式。可以使用如下命令:

#加密
echo 'shiyanlou' |  tr  'a-zA-Z'  'n-za-mN-ZA-M' 
fuvlnaybh
#解密
echo 'fuvlnaybh' | tr  'a-zA-Z'  'n-za-mN-ZA-M'
shiyanlou

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

头脑灵活的胖子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值