Linux Bash 中的 tr 命令

Yahya Irmak 2023年1月30日
  1. 在 Linux Bash 中使用 tr 命令翻译字符串
  2. 在 Linux Bash 中使用 -d 标志删除字符
  3. 在 Linux Bash 中使用 -s 标志压缩字符
  4. 在 Linux Bash 中使用 -c 标志排除 Set
  5. 从 Linux Bash 中的 cat 命令获取输入
Linux Bash 中的 tr 命令

在 Linux 中,我们可以使用 Bash 脚本进行字符串操作,例如连接、截断和在文本中查找单词。

本文将解释如何在 Linux Bash 中使用 tr 命令翻译或删除字符。

在 Linux Bash 中使用 tr 命令翻译字符串

tr 命令的意思是翻译。它用于删除、翻译和压缩字符。

它接受标准输入,对其进行处理,然后将其写入标准输出。

语法:

tr '[SET1]' '[SET2]'

这里,SET1 代表要在文本中找到的字母,SET2 代表要替换的字母。

例如,我们可以使用以下命令之一将所有小写字母转换为大写。

echo "lowercase string" | tr '[:lower:]' '[:upper:]'
echo "lowercase string" | tr '[a-z]' '[A-Z]'

与此相反:

echo "UPPERCASE STRING" | tr '[A-Z]' '[a-z]'
echo "UPPERCASE STRING" | tr '[:upper:]' '[:lower:]'

大写小写转换

对于查找和替换的使用:

echo "test string with dash" | tr ' ' '-'

使用此命令,将找到作为输入的文本中的所有空格字符并将其替换为破折号。

test-string-with-dash

在 Linux Bash 中使用 -d 标志删除字符

-d 标志用于删除字符,而不是翻译它们。它采用单个字符集并从文本中删除这些字符。

`echo "hxexlxlxo" | tr -d 'x'`

输出:

hello

在 Linux Bash 中使用 -s 标志压缩字符

-s 标志将文本中的连续字符转换为该字符的单次出现。

echo "tttessttt sstriinngg" | tr -s 'a-z'

输出:

test string

在 Linux Bash 中使用 -c 标志排除 Set

-c 标志将除 SET1 中指定的字符之外的所有字符转换为 SET2 中的字符。

`echo "a1@b2'c3&d" | tr -c '[a-z]' ' '`

输出:

a  b  c  d

从 Linux Bash 中的 cat 命令获取输入

你可以使用 tr 命令更改文件的内容。我们可以使用 cat 命令读取文件并将其内容通过管道传输到 tr 命令。

cat file.txt | tr '-' ' '

带有 cat 命令的 tr

作者: Yahya Irmak
Yahya Irmak avatar Yahya Irmak avatar

Yahya Irmak has experience in full stack technologies such as Java, Spring Boot, JavaScript, CSS, HTML.

LinkedIn

相关文章 - Linux Command

相关文章 - Bash Command