📜  UnixLinux 中的 tr 命令示例(1)

📅  最后修改于: 2023-12-03 15:20:54.199000             🧑  作者: Mango

Unix/Linux 中的 tr 命令示例

简介

在 Unix/Linux 中,tr 是一种用来转换或删除字符的命令行实用工具。tr 命令可以执行一些简单的字符替换、字符删除和字符转换操作。tr 命令可以从标准输入或文件中读取字符,并将转换后的字符输出到标准输出或文件中。

语法

tr 命令的基本语法如下:

tr [选项] SET1 [SET2]
选项

tr 命令支持以下选项:

  • -c:转换 SET1 中未包括的所有字符。
  • -d:删除来自标准输入中 SET1 指定的字符。
  • -s:将 SET1 中出现的连续重复字符替换为单个字符。
  • -t:用 SET2 替换 SET1 中的字符。
SET1 和 SET2

tr 命令中的 SET1 和 SET2 是指定要转换的字符集。SET1 是必需的,而 SET2 是可选的。

SET1 是一个字符集,它可以是单个字符、字符序列或字符范围。字符范围用大括号括起来,使用连字符表示范围。例如:

  • a:表示字符 a
  • ABC:表示字符 A、B 和 C
  • a-z:表示 a 到 z 的所有小写字母

SET2 也是一个字符集,它包含与 SET1 中字符数相同的字符或更少的字符。SET1 中的字符将被 SET2 中的相应字符所替换。

示例
替换字符

使用 tr 命令替换一段文本中的字符。

假设我们有一个名为 text.txt 的文件,其中包含以下内容:

Hello world!

要将文件中所有的字符 o 替换为 z,可以使用以下命令:

cat text.txt | tr 'o' 'z'

运行以上命令后,输出结果为:

Hellz wzrld!
删除字符

使用 tr 命令删除一段文本中的字符。

假设我们有一个名为 text.txt 的文件,其中包含以下内容:

Hello world!

要删除文件中所有的字符 o,可以使用以下命令:

cat text.txt | tr -d 'o'

运行以上命令后,输出结果为:

Hell wrld!
转换字符

使用 tr 命令将一段文本中的小写字母转换为大写字母。

假设我们有一个名为 text.txt 的文件,其中包含以下内容:

Hello world!

要将文件中所有的小写字母转换为大写字母,可以使用以下命令:

cat text.txt | tr 'a-z' 'A-Z'

运行以上命令后,输出结果为:

HELLO WORLD!
去重字符

使用 tr 命令去重一段文本中的连续重复字符。

假设我们有一个名为 text.txt 的文件,其中包含以下内容:

Hello      world!

请注意,上面的文本中有多个连续的空格。

要去除文件中所有的连续空格,可以使用以下命令:

cat text.txt | tr -s ' '

运行以上命令后,输出结果为:

Hello world!
总结

tr 命令是一个十分强大的字符操作工具。它可以帮助我们快速地替换、删除、转换字符,以及去重连续字符。使用 tr 命令可以提高我们的工作效率,减少文本处理的工作量。