How to use grep command in linux? (detailed explanation)

青灯夜游
Release: 2021-04-22 15:24:57
Original
22563 people have browsed it

The grep command in Linux system is a powerful text search tool. It can use regular expressions to search text and print out matching lines. Its usage syntax is "grep [options] pattern [files] ".

How to use grep command in linux? (detailed explanation)

#The operating environment of this article: linux5.9.8 system, Dell G3 computer.

Linux grep command

The Linux grep command is used to find qualified strings in files; it can also be used to find files containing specified template styles. It can use regular expression search to search for a specified string pattern in a file, list the file names containing substrings matching the pattern, and output the text lines containing the string.

grep works like this: it searches one or more files for a string template. If the template contains spaces, it must be quoted, and all strings following the template are treated as file names. The search results are sent to standard output without affecting the original file content.

Basic syntax:

grep [options] pattern [files]
Copy after login

Main parameters of [options]:

-a or --text: Do not ignore Binary data.

-A or --after-context= : In addition to displaying the column that conforms to the template style, and display the content after the row.

-b or --byte-offset: Mark the number of the first character of the line before displaying the line that matches the style.

-B or --before-context= : In addition to displaying the line that matches the style, the content before that line is displayed.

-c or --count : Count the number of columns that match the style.

-C or --context= or - : In addition to displaying the line that matches the style, and display this line Before and after content.

-d or --directories= : This parameter must be used when specifying directories instead of files to be searched, otherwise the grep command will report information and stop. action.

-e

-E or --extended-regexp : Use the style as extended ordinary notation.

-f or --file= : Specify a rule file whose content contains one or more rule patterns, allowing grep to find file contents and formats that meet the rule conditions. One rule style for each row.

-F or --fixed-regexp : Treat styles as a list of fixed strings.

-G or --basic-regexp : Treat the style as a normal notation.

-h or --no-filename: Do not indicate the file name to which the line belongs before displaying the line that matches the style.

-H or --with-filename: Before displaying the line that matches the style, indicates the file name to which the line belongs.

-i or --ignore-case: Ignore differences in character case.

-l or --file-with-matches: List file names whose file contents match the specified pattern.

-L or --files-without-match: List file names whose content does not match the specified style.

-n or --line-number: Before displaying the line that matches the style, indicate the column number of the line.

-o or --only-matching: Only display the matching PATTERN part.

-q or --quiet or --silent: Do not display any information.

-r or --recursive: The effect of this parameter is the same as specifying the "-d recurse" parameter.

-s or --no-messages: Do not display error messages.

-v or --revert-match : Display all lines that do not contain matching text.

-V or --version : Display version information.

-w or --word-regexp: Only display columns that match whole words.

-x --line-regexp: Only display columns that match all columns.

-y: The effect of this parameter is the same as specifying the "-i" parameter.

-?: Display the upper and lower matching lines at the same time? lines, such as: grep -2 pattern filename displays the upper and lower lines of the matching line at the same time.

pattern Main parameters of regular expression:

\: Ignore the original meaning of special characters in the regular expression.

^: Matches the starting line of the regular expression.

$: Matches the end line of the regular expression.

\<:Start from the line matching the regular expression.

\>:To the end of the line matching the regular expression.

[]: A single character, such as [A] means A meets the requirements.

[ - ]: Range, such as [A-Z], that is, A, B, C to Z all meet the requirements.

.: All single characters.

*: There are characters, and the length can be 0.

Code example:

Example 1:In the current directory, find files with the word "test" prefixed file containing the "test" string and print out the line of the string. At this time, you can use the following command:

grep test test*
Copy after login

Output:

testfile1:This a Linux testfile! #列出testfile1 文件中包含test字符的行 testfile_2:This is a linux testfile! #列出testfile_2 文件中包含test字符的行 testfile_2:Linux test #列出testfile_2 文件中包含test字符的行
Copy after login

Example 2:Reverse search, the "-v" parameter can be used to print out the contents of lines that do not meet the conditions. Find lines that do not contain test in files whose file names contain test

grep -v test *test*
Copy after login

Output:

testfile1:helLinux! testfile1:Linis a free Unix-type operating system. testfile1:Lin testfile_1:HELLO LINUX! testfile_1:LINUX IS A FREE UNIX-TYPE OPTERATING SYSTEM. testfile_1:THIS IS A LINUX TESTFILE! testfile_2:HELLO LINUX! testfile_2:Linux is a free unix-type opterating system.
Copy after login

相关linux视频教程推荐:《linux语言教程

以上就是本篇文章的全部内容,希望能对大家的学习有所帮助。更多精彩内容大家可以关注php中文网相关教程栏目!!!

The above is the detailed content of How to use grep command in linux? (detailed explanation). 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
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!