📜  tr 替换 - Shell-Bash (1)

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

tr 替换 - Shell-Bash

在 Shell-Bash 中, tr 是一个很常用的命令,用来进行字符转换或字符替换。它的语法为:

tr [选项] [原字符集] [目的字符集]

其中, 选项 可以是:

  • -c:对原字符集的补集进行操作。
  • -d:删除原字符集中所有出现过的字符。
  • -s:将原字符集中出现过的连续重复字符压缩为一个字符。
  • -t:用目的字符集中的字符一一替换原字符集中的字符。
示例1 - 字符转换

我们可以使用 tr 来进行字符转换。下面的示例中,我们将小写字母转换成大写字母:

$ echo "hello world" | tr '[:lower:]' '[:upper:]'
HELLO WORLD

在上面的示例中,我们使用管道 |echo 命令的输出传递给 tr 命令。 tr 命令的第一个参数 '[:lower:]' 表示原字符集是所有小写字母,第二个参数 '[:upper:]' 表示目的字符集是所有大写字母。

示例2 - 字符替换

另一个常见的用法是进行字符替换。下面的示例中,我们将所有的冒号替换成分号:

$ echo "name:john age:20" | tr ':' ';'
name;john age;20

在上面的示例中,我们使用管道 |echo 命令的输出传递给 tr 命令。 tr 命令的第一个参数 ':' 表示原字符集是冒号,第二个参数 ';' 表示目的字符集是分号。

示例3 - 删除字符

我们可以使用 tr 命令删除指定字符。下面的示例中,我们将字符串 "hello world" 中的空格全部删除:

$ echo "hello world" | tr -d ' '
helloworld

在上面的示例中,我们使用管道 |echo 命令的输出传递给 tr 命令。 tr 命令的参数 -d ' ' 表示删除空格。

示例4 - 压缩字符

最后一个示例是用 tr 命令来压缩重复的字符。下面的示例中,我们将字符串 "hello world" 中的连续的空格缩成一个空格:

$ echo "hello   world" | tr -s ' '
hello world

在上面的示例中,我们使用管道 |echo 命令的输出传递给 tr 命令。 tr 命令的参数 -s ' ' 表示压缩空格。

以上就是 tr 命令常见的用法,可以帮助你在 Shell-Bash 中进行字符转换、字符替换、字符删除和字符压缩等操作。