tr ( translate的缩写)是一个有用的命令行实用程序,它可以翻译和/或删除 stdin 输入中的字符并写入 stdout。它是一个在命令行上操作文本的有用程序。
本文将为Linux 新手解释一些有用的tr 命令示例。
运行tr 命令的语法如下,其中SET1中的字符转换为SET2中的字符。
$ tr 标志 [SET1] [SET2]
Linux tr 命令示例
1.一个简单的tr 命令用例是将文本中的所有小写字母更改为大写字母,反之亦然,如下所示。
$ 猫 linux.txt Linux 是我的生命 Linux 改变了我的生活 linux 对我来说是最好的和一切..:)
$ 猫 linux.txt | tr [:下:] [:上:] Linux 就是我的生活 Linux 改变了我的生活 LINUX 对我来说是最好的、最重要的……:)
2.或者,您可以使用以下命令将文件中的所有小写字母更改为大写,如图所示。
$ 猫 linux.txt | tr [az] [AZ] Linux 就是我的生活 Linux 改变了我的生活 LINUX 对我来说是最好的、最重要的……:)
3.要将写入stdout的结果保存在文件中以供以后处理,请使用 shell 的输出重定向功能,(>)
如图所示。
$ 猫 linux.txt | tr [az] [AZ] >output.txt $ cat 输出.txt Linux 就是我的生活 Linux 改变了我的生活 LINUX 对我来说是最好的、最重要的……:)
4.关于重定向,您可以使用输入重定向将输入发送到tr,并使用相同的命令将输出重定向到文件,如图所示。
$ tr [az] [AZ] <linux.txt>输出.txt
5.另一个有用的功能是,您可以使用-d
标志来删除字符,例如,使用以下命令删除域名中的空格。
$ cat 域.txt 万维网。例子。com 万维网。薄荷。com 万维网。linux说。com
$ cat 域.txt | tr-d'' www.example.com www.fossmint.com www.linuxsay.com
6.如果您正在处理的文本中的序列中有重复的字符(例如双空格),您可以使用该-s
选项来压缩字符,只留下出现一次的字符。
$ cat 域.txt www.example ..... com www.fossmint.com www.linuxsay.com
$ cat 域.txt | tr -s '' www.example.com www.fossmint.com www.linuxsay.com
7.该-c
选项告诉tr使用SET给定中的补码。在此示例中,我们要删除所有字母并只保留UID。
$ echo "我的 UID 是 $UID" | tr -cd "[:数字:]n" 或者 $ echo "我的 UID 是 $UID" | tr-d“a-zA-Z”
8.这是将单行单词(句子)分成多行的示例,其中每个单词单独出现。
$ echo "我的UID是$UID" 我的UID是1000 $ echo "我的 UID 是 $UID" | tr“”“n” 我的 用户识别码 是 1000
9.与上一个示例相关,您还可以将多行单词翻译成单个句子,如图所示。
$猫uid.txt 我的 用户识别码 是 1000 $ tr "n" " " < uid.txt 我的UID是1000
10.也可以仅将单个字符(例如空格)转换为字符“ : ”
,如下所示。
$ echo "Example.com =>Linux-HowTos、指南、教程" | tr " " ":" Example.com:=>Linux-HowTos、指南、教程
您可以将多个序列字符与tr一起使用,有关更多信息,请参阅tr手册页。
$ 人 tr
就这样!tr是在命令行上操作文本的有用命令。在本指南中,我们向 Linux 新手展示了一些有用的tr 命令用法示例。您可以通过下面的评论表与我们分享您的想法。