Home PC Games Linux Windows Database Network Programming Server Mobile  
  Home \ Linux \ grep command Series: How to Use the grep command in Linux / UNIX     - Grep, Ack, Ag searches Efficiency Comparison (Linux)

- Oracle restrict certain IP, the malicious user actions on important table (Database)

- To compile and install Redis Linux and master-slave replication configuration (Database)

- Nginx load balancing configuration (TCP proxy) (Server)

- Android Dynamic efficiency articles: a brilliant Loading Analysis and Implementation (Programming)

- Docker in the development and practice of IFTTT (Server)

- PLSQL Developer synchronization table tools (Database)

- The Zabbix2.4.5 source compiler installation under Ubuntu 14.04 (Server)

- Thinking in Java study notes - initialization and cleanup (Programming)

- Mount and unloading disks under Linux (Linux)

- command-line tool for send e-mail (Linux)

- Getting case of Python Hello World (Programming)

- Oracle Execute to Parse perform analytical Ratio Analysis (Database)

- The relationship between UNIX and Linux (Linux)

- Docker ecosystem security is gradually maturing (Server)

- Increase Linux system security --chattr (Linux)

- Nginx concerning the location and rewrite applications proxy_pass (Server)

- C # how to generate a folder or file automatically rename (Programming)

- Linux user opens a number of adjustment processes (Linux)

- Install Ubuntu 14.04 and Windows 8 / 8.1 dual-boot in UEFI mode (Linux)

  grep command Series: How to Use the grep command in Linux / UNIX
  Add Date : 2018-11-21      
  How do I use in Linux, Apple OS X systems and other UNIX grep command, you give me to show some simple examples?

grep command to search for text or from a given file search within a file line contains the given string or word. Generally speaking, grep to display matching lines. Use grep to search for the one or more regular expressions to match lines of text, and to show only the matching rows. grep is regarded as one of the most useful in Linux / Unix system commands.

do you know

grep the name comes from a Unix / Linux command similar operation in the old line editor ed performed:

g / re / p

The syntax of the grep command

The syntax is as follows:

grep 'word' filename
grep 'word' File 1 File 2 File 3
grep 'string 1 string 2' file name
cat a file | grep 'something'
command | grep 'something'
command options 1 | grep 'data'
grep --color 'data' file name

How to use grep to search for a file

boo user searches for / etc / passwd file under, enter:

$ Grep boo / etc / passwd

foo: x: 1000: 1000: foo ,,,: / home / foo: / bin / ksh
You can use grep to ignore case mandatory. For example, use the -i option to match boo, Boo, BOO and other combinations:

$ Grep -i "boo" / etc / passwd

Recursively grep

You can use grep recursively search. For example, search for all files that contain the string "" in the file directory

$ Grep -r "" / etc /

$ Grep -R "" / etc /
Sample output:

/ Etc / ppp / options: # ms-wins
/ Etc / ppp / options: # ms-wins
/ Etc / NetworkManager / system-connections / Wired connection 1: addresses1 =; 24;;
You will see the search results to Each line prefix to find the matching file names (for example: / etc / ppp / options). Output file name being included may add -h option to disable the output:

$ Grep -h -R "" / etc /

$ Grep -hR "" / etc /
Sample output:

# Ms-wins
# Ms-wins
addresses1 =; 24;;

Use grep to search for text

When you search for boo when, grep command will match fooboo, boo123, barfoo35 and all other string contains boo, you can use the -w option to force output only those lines (LCTT Universe contains only the whole word: that the character both sides of the string is the English word delimiters, such as spaces, punctuation, and so on end, so that there is no hyphenation Chinese sign language does not apply.).

$ Grep -w "boo" file

Use the grep command to search two different words

Use egrep command is as follows:

$ Egrep -w 'word1 | word2' / path / to / file
(LCTT Annotation: here to use regular expressions, so use the egrep command, that extended grep command.)


Statistics text to match the number of rows

grep command to display each file to match the number of parameters by adding -c:

$ Grep -c 'word' / path / to / file
It was added to the match line before the line can pass the -n option to output the line number:

$ Grep -n 'root' / etc / passwd
Sample output:

1: root: x: 0: 0: root: / root: / bin / bash
1042: rootdoor: x: 0: 0: rootdoor: / home / rootdoor: / bin / csh
3319: initrootapp: x: 0: 0: initrootapp: / home / initroot: / bin / ksh

Invert the match (mismatch)

You can use the -v option to output the contents do not contain a match, the output includes only those that contain a given word line, for example, all the output line does not contain the word bar:

$ Grep -v bar / path / to / file

UNIX / Linux Pipeline and grep command

grep is often used in conjunction with the pipe, in this example, displays the name of the hard disk device:

# Dmesg | egrep '(s | h) d [a-z]'
Shows the CPU type:

# Cat / proc / cpuinfo | grep -i 'Model'
However, the above command can also use the following methods, do not use the pipe:

# Grep -i 'Model' / proc / cpuinfo
Sample output:

model: 30
model name: Intel (R) Core (TM) i7 CPU Q 820 @ 1.73GHz
model: 30
model name: Intel (R) Core (TM) i7 CPU Q 820 @ 1.73GHz

Only shows how to match the contents of a file name?

Use the -l option to display the file name of the file that contains the contents of main ():

$ Grep -l 'main' * .c
Finally, you can force grep to output color:

$ Grep --color vivek / etc / passwd
- Python function arguments * args and ** kwargs usage (Programming)
- How to compile and install wxWidgets in Ubuntu / Debian / Linux Mint (Linux)
- JITwatch installation under Linux (Linux)
- A well-known but rarely used skills: object pool (Programming)
- CentOS 6.5 Telnet SecureCRT use management tools (Linux)
- Java List add duplicate the same object (Programming)
- Graphical development environment to build Android under Ubuntu 11.04 (Linux)
- Linux virtual machines to solve end MySQL database can not remote access (Database)
- Linux remote landing system (Linux)
- Oracle Data File Management (Database)
- WordPress blog installation Redis Cache (Server)
- Ubuntu deployment Flask + UWSGI + Nginx Comments (Server)
- Report generation CPU, memory, and input and output ports with the sar command (Linux)
- How to find the available network adapter on Ubuntu (Linux)
- Do not find ifconfig eth0 and IP address under CentOS6.5 (Linux)
- Oracle 12C RAC optimizer_adaptive_features cause of data into overtime (Database)
- Ubuntu 14.04 install the NVIDIA driver + CUDA + MATLAB (Linux)
- About ORA-02391 solution (Database)
- How to install Visual Studio Code on Ubuntu (Linux)
- Java static code analysis tool Infer (Programming)
  CopyRight 2002-2022 newfreesoft.com, All Rights Reserved.