deepfind and deepgrep

2006-10-21

Do you use find? Of course you do, everybody uses it – often. It’s a nice and quick program for finding files on your disk. A downside to find is that it does not list files embedded in other files like .deb, .rpm, .tar.gz, email attachments, and other files. Now there is a version of find that does exactly this. It’s called deepfind.

Do you use grep? Of course you do, everybody uses it – often. It’s a nice and quick program for finding files on your disk that match a particular string. A downside to grep is that it does not search in binary files like OpenOffice files, mp3s, Microsoft office files, pdfs and also not in files embedded in other files like .deb, .rpm, .tar.gz, email attachments, pdf and other files. Now there is a version of grep that does exactly this. It’s called deepgrep.

deepgrep and deepfind are command-line tools and have no GUI dependencies (so GNOME fans may also use it ;-). The programs both use JStreams and are part of Strigi. Currently, these programs are located in SVN. They will be in the next Strigi release. For background information on the workings of deepfind and deepgrep and how they relate to Strigi, Tracker and Beagle, check out my aKademy talk.

Comments

Lost?

Perhaps I'm a bit lost about it, but does it mean that Java is needed? :S

no java needed

No, java is not needed, JStreams is C++ library. The idea for it does come from java.io.InputStream, hence the name.

That is Probably a Frequently Asked Question

This may prove to be a perception problem for the uninformed public. I suggest making it dead obvious in the online docs that it does not depend on Java when you mention jstreams.

No everything starting with a j means java

Besides, the public doesn't need to know those details. Strigi is a pure C++ program and people that are interested in developing it will see this when they download the code.

Feel free to make a FAQ entry on the wiki though.

Hmmm, maybe not.

I checked the wiki and it doesn't seem to mention the term jstreams. I don't want to start that then. :)