O'Reilly logo

Learning Unix for Mac OS X Tiger by Dave Taylor

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 5. Finding Files and Information

One of the fundamental challenges with modern computers is finding files and information. Whether you're highly organized and use wonderfully mnemonic names for every file or directory created, or whether you have lots of letter1, letter2, and work directories scattered around your filesystem, there will undoubtedly come a time when you need to find something on your computer based on its contents, filename, or similar attribute.

It turns out that there are four different ways in Unix to search for—and hopefully find—what you seek. To look inside files, you need to use the grep command, as introduced briefly in the previous chapter. To find files by filename, the fastest solution is the locate command. A more sophisticated filename and attribute search can be done with the Unix power-user's find command. And finally, Tiger introduces an entirely new search system called Spotlight that has a powerful command-line component worth exploring.

The Oddly Named grep Command

The grep program searches the contents of files for lines that have a certain pattern. The syntax is:

grep pattern file(s)

The simplest use of grep is to search for files that contain a particular word by feeding grep a pattern (in this case, the single word "Unix") and a list of files in which to search. For example, let's search all the files in the working directory for the word "Unix." We'll use the wildcard * to quickly give grep all filenames in the directory:

$ grep "Unix" * ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required