Find all files containing a specific text (string) on Linux?

Harold Finch
2 min readJun 30, 2024

--

To find all files containing a specific text (string) on a Linux system, you can use the grep command. grep is a powerful command-line utility that searches for patterns within files. Here's how you can use it to search for a specific text string within files.

Basic Syntax

grep -r "search_string" /path/to/directory

Explanation

  • grep: The command used for searching text.
  • -r or --recursive: Recursively search subdirectories.
  • "search_string": The text string you are searching for. Enclose it in quotes if it contains spaces or special characters.
  • /path/to/directory: The directory where you want to start the search. Use . to indicate the current directory.

Example Usage

Search for a Specific String in the Current Directory

grep -r "example_text" .

This command will search for the string “example_text” in all files and subdirectories within the current directory.

Search for a Specific String in a Specific Directory

grep -r "example_text" /home/user/documents

This command will search for the string “example_text” in all files and subdirectories within /home/user/documents.

Additional Options

  • -i: Case-insensitive search.
grep -ri "example_text" .
  • -l: Only print the names of files containing the string.
grep -rl "example_text" .
  • -n: Show the line numbers where the string appears.
grep -rn "example_text" .
  • --exclude: Exclude files matching a pattern.
grep -r "example_text" . --exclude="*.log"
  • --include: Only search files matching a pattern.
grep -r "example_text" . --include="*.txt"

Full Example with Multiple Options

Search for the string “example_text” in all .txt files within the /home/user/documents directory, ignoring case, and display the line numbers.

grep -rin "example_text" /home/user/documents --include="*.txt"

Using the grep command with the appropriate options allows you to efficiently search for specific text strings within files on a Linux system. Adjust the command options based on your specific needs to refine your search results.

We are VaST ITES INC, a DevOps consulting services company based in the Canada. We help businesses of all sizes adopt and implement DevOps practices to improve their software development and delivery processes.

Contact us for a free Consultation

Reach out to us now: 🤝
🌐 https://vastites.ca/contact-us/
☎️ +1 3127249560
📩 info@vastites.ca

--

--