Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore.

15 St Margarets, NY 10033
(+381) 11 123 4567



Find All Files Containing a String or Text on Linux and Mac

Sometimes on Linux/UNIX computers, you will want to do a search for any files containing a particular string within it. This can be particularly useful when searching for specific things for a CI/CD pipeline.

On Linux or Mac, if we want to search a set of files for a specific string in a terminal, we use the grep.

Find All Files Which Contain a Particular String on Linux or Mac

Return the Filename Only

The below will find any file that contains the term ‘html’ in the ‘/views’ directory. It will return only the file names.

grep -rl ./views -e 'html' 

Return the Text Itself

Again, this will find any file containing the string ‘html’ in the ‘/views’ directory. It will return the line which has that text in it.

grep -r ./views -e 'html' 

How To Use Grep on Linux/Mac

You can string other options together, to get different results. When we say -r, for example, we mean ‘recursive’ – i.e. it will search through every folder. When we write -rl, this means essentially -r -l, which means search recursively, and return only the file name.

Below is a list of all grep options or switches, which you can add to your query to get the results you need:

  1. -r – search recursively.
  2. -l – return only the file name.
  3. -i – ignore the case.
  4. -w – search only for words, i.e. not text within words. For example, if we search for ‘html’, then somehtmltext would not match.
  5. -n – returns the line number, but doesn’t work with -l.
  6. -s – suppress any error messages.
  7. -h – output the line itself, without the line number or file.
  8. -v – invert the search, i.e. searching for html with -v will return everything without html.
  9. -f – used to indicate a file you want to use which contains a regular expression.
  10. -x – match only if the whole lines only. This will only return for a search of html if that exists on its own line separately.

Credit: Source link

Previous Next
Test Caption
Test Description goes like this