Home>Article>Operation and Maintenance> Detailed explanation of tr command under Linux system

Detailed explanation of tr command under Linux system

齐天大圣
齐天大圣 Original
2020-11-05 16:48:15 2868browse

Today I would like to introduce to you a very commonly used command - tr. This command can be used to replace strings, delete specified characters, and compress multiple repeated characters into only one. In addition, this command supports pipes. From the above function introduction, you should be able to feel that this command is very powerful.

Next, let’s introduce the command:

tr [选项] 参数

Commonly used options are as follows:

  • -c is followed by a character range, which means except these characters The characters

  • -d delete the specified characters

  • -s compress the duplicate characters to only one

Let’s learn how to use this command through several cases

String replacement

This is the most basic function. When no options are added, it means string Replacement, the command format is:

tr 原字符串 需替换成的字符串

Here, we often use the - symbol, which means continuous. Let’s take a look at the case:

# 字符串替换,将小写字母替换为大写字母 # echo hello,world | tr [a-z] [A-Z] HELLO,WORLD

Delete characters

Use the option -d to delete the specified characters, and use the -d -c option to retain the specified characters. Let’s look at the case

# 删除指定字符ae # echo 'There are apples' | tr -d 'ae' Thr r ppls # 删除指定字符,只保留数字和字母及换行符,其他的字符全部删除 # echo 'sSwd,aw23e;sw aswe' | tr -d -c 'a-zA-Z0-9\n' sSwdaw23eswaswe

Compress characters

This function is very commonly used. It can compress consecutive repeated characters into only one. We often use it to remove consecutive spaces and leave only one space, and to remove consecutive line breaks and leave only one newline. To complete the function of compressing characters, you need to use the -s option.

# 删除连续的空格只留下一个(我们也经常删除连续的换行符只留一个) # echo -e "hello world.\n\n\n" | tr -s ' \n' hello world.

The above examples are relatively simple, and you may not be able to see the power of this command. Let’s look at a few slightly more complex cases.

We know that cut is not very good at processing consecutive spaces. If you want to use cut to select the second column of the result displayed by the df command, you cannot do it. At this time, if you first use the tr command to compress multiple consecutive spaces into one, then the cut command can meet your needs.

# df -h | tr -s ' \t' | cut -d ' ' -f 2 Size 40G 487M 497M 497M 497M 100M

As you can see, through the processing of tr, cut can now obtain the second column of information.

tr This command is very powerful and very simple to use. I hope everyone can master and apply it.

The above is the detailed content of Detailed explanation of tr command under Linux system. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn