

The term “regular expression” is defined as a special string that describes the searching pattern. e is strictly the flag for indicating the pattern you want to match against.At the start of this guide, we mentioned that grep stands for global regular expression print. E (extended-regexp) controls whether you need to escape certain special characters.

We can search multiple patterns or strings using OR operator | and \|.

Operator:x:11:0:operator:/root:/sbin/nologin Search multiple strings Uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin We can use -B option to display N lines before the string for a given file $ grep -B 2 "root" /etc/passwd Gopher:x:13:30:gopher:/var/gopher:/sbin/nologin Display lines before the string match Operator:x:11:0:operator:/root:/sbin/nologin The -A option which displays the N lines after the string match. This may be obtained from: Display lines after the string match # For a step to step guide on installing, configuring and using samba, Samba has a huge number of configurable options (perhaps too # This is the main Samba configuration file. The -w (word-regexp) flag for grep will make the given expression match only whole words. I : This option ask grep command to ignore the case while matching the pattern. This option instructs grep command to print only the matching words instead of entire line. O : By default, grep prints entire line which contains the search pattern. The following command will extract all links from an file $ grep –Eoi ']+>.*' filename Use -E ( or -extended-regexp) option if you want grep to understand it as an extended regular expression. In the following example, the string ^welcome will match only if it occurs at the very beginning of a line. The ^ (caret) symbol - The pattern following it must occur at the beginning of each line. Basic and Extended are the two regular expression used by grep command.īy default, grep interprets the pattern as a basic regular expression. Regular Expressions is a pattern to match for each input line. $ ps -ef | grep docker | grep apache Regular Expressions in files Here i am doing multiple pipe and searching for the 'docker' and 'apache' process from ps command. In the following example I am searching for a file with name 'backup' using the ls command $ ls | grep backup You can use pipe the output for a command and grep for the pattern from its output. $ grep -r nginx /var Search for a String in Command Output (stdout) In the following example, grep command will search for the string 'ngnix' in all files inside /var directory. Recursive search is achieved by using -r option that will search Recursively all file skipping symbolic links.

Haldaemon:x:68:68:HAL daemon:/:/sbin/nologin Recursive Search In following examples grep matches all the words such as “hal”, “HAL” case insensitively: $ grep -i HAL /etc/passwd Options -i searches for the given string/pattern case insensitively. etc/group:wheel:x:10:root Grep case insensitive search etc/passwd:operator:x:11:0:operator:/root:/sbin/nologin
