Detailed explanation of tr command under Linux system

齐天大圣
Release: 2020-11-05 16:50:32
Original
2966 people have browsed it

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 [选项] 参数
Copy after login

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 原字符串 需替换成的字符串
Copy after login

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
Copy after login

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
Copy after login

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.
Copy after login

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
Copy after login

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!

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template