Alert icon
We're changing our privacy policy. This stuff matters.  Learn more  Dismiss

Linux grep - A quick tutorial showing how to use grep to count strings in a text file

Loading...

Sign in or sign up now!
Alert icon
Upgrade to the latest Flash Player for improved playback performance. Upgrade now or more info.
6,286
Loading...
Alert icon
Sign in or sign up now!
Alert icon

Uploaded by on Oct 8, 2010

http://linuxbyexample.org

In today's screen cast, I am going to show you how to use the Linux grep command, to quickly count the number of instances of a text string, found within a given file.

The example will demonstrate how to quickly process a web servers access log file, for certain activity. Last month I released the TIFF splitter utility, which is a free piece of software to split multi page TIFF files into their individual
pages. It's worth pointing out that this software will run on Linux when used in conjunction with Wine. Anyway, I wanted a quick and easy way to check how many downloads of the software ZIP file there have been.

Here I have a copy of the access log file, for the last weeks activity, and if I use the CAT command, to output the contents of the file to screen, you can see it contains a lot of information. So we need to use the grep command to
filter out the lines we are interested in. In my case, I want to find all the lines which have a dot zip reference in them, as this will give me the actual requests for the software download.

The command we need to type is grep, space, followed by the criteria your searching for, in this case dot zip. We then need to pipe in the file name we are going to process, for example access dot log. The grep output is now restricted, showing just the lines within the log file which have the dot zip reference, highlighting your search term for convenience.

To get the actual count, we just need to add the dash c switch to the grep command, which gives us a count of seventy two. So I now know my software has been downloaded seventy two times in the last week. To make life even easier, I have assigned this command sequence to an alias using the letter k. Now, all I need to type is k and hit return, to get the current download count. I think you'll agree that's pretty convenient for a web master who wants to quickly check certain activity on their web site.

Likewise, if you wanted to know how many times Google Bot has visited your web site, then just enter the term Google Bot as the search criteria, in my case, you can see it has visited just over a hundred times.

If you would like more information on the grep command, then I would recommend the grep pocket reference book, published by O'Reilly.

Thank you for watching the video, if you have found it useful then please leave a comment, and don't forget to subscribe to the Linux by Example channel.

Category:

Science & Technology

Tags:

License:

Standard YouTube License

  • likes, 0 dislikes

Link to this comment:

Share to:

Uploader Comments (linuxbyexample)

  • That voice or way of taliing rather, that "SUPER SERIOUS tutorial voice" Its THE WORST way to talk to someone ever!

    Please speak like a normal person next time, its less annoying :D

  • @daeheadshot

    Helge sorry you found the voice annoying, I certainly wasn't try to annoy anyone -- I was trying to make the video "work safe" and sound professional, but I'll take your comments on board, and try to make future videos less serious

    Paul,

  • Hi,

    It's a very interesting upload.

    Could you pls. tell me how to search multiple strings in multiple files in a folder and subfolders?

  • @ritika8sharma2 Thanks, glad you liked the video. You can search all files and sub-folders by doing :- grep -rl "stringtofind" . Which will list the file names the string to find is found in, the dot at the end tells grep to use the current folder as the starting point. To search for multiple strings use the following format :- grep -rl 'string1\|string2\|string3' . Cheers Paul
see all

All Comments (7)

Sign In or Sign Up now to post a comment!
  • I found it not useful, but very useful, thank you very much

  • Hi, thanks ..this is quite a useful lesson. also could you please tell me how to add alias as yo have mentioned in the lesson.

Loading...

Alert icon
0 / 00Unsaved Playlist Return to active list
    1. Your queue is empty. Add videos to your queue using this button:
      or sign in to load a different list.
    Loading...Loading...Saving...
    • Clear all videos from this list
    • Learn more