25  Searching Knowledge: From find to Full-Text Search

Guiding Question: How do you navigate a library too large to remember?

As collections of digital information grow, a familiar problem begins to emerge.

We know the information exists.

We simply cannot remember where we placed it.

Was it in the Documents directory?

Inside an old project?

Buried within a collection of notes?

Stored somewhere under a different filename?

Searching therefore becomes more than finding words inside documents.

Sometimes we must first locate the documents themselves.

The Unix tradition answers this challenge through a collection of complementary tools, each addressing a different aspect of discovery.

25.1 Searching for Files

One of Unix’s oldest search tools is find.

Rather than examining the contents of files, find explores the file system itself.

It answers questions such as:

  • Which files were modified today?
  • Which files end with .qmd?
  • Which directories contain Markdown documents?
  • Which files exceed a particular size?

For decades, find has remained one of the most dependable companions of Unix users.

Its syntax rewards patience, and its expressive power continues to impress.

Like many classic Unix utilities, it is available on virtually every Unix-like operating system.

25.2 Modern File Discovery

As computing environments evolved, newer search tools appeared.

One popular example is fd.

Inspired by the philosophy of find, fd offers a more approachable command-line interface while preserving much of the original utility’s expressive power.

It searches recursively by default, respects common ignore files, and often requires less typing for everyday tasks.

Many developers appreciate its speed and sensible defaults.

Others continue to rely on find because of its universal availability and long-established behaviour.

The experienced textsmith understands both.

One represents tradition.

The other demonstrates how that tradition continues to evolve.

25.4 Beyond Filenames

Modern desktop search systems extend this idea further.

Rather than relying solely on filenames or directory structures, they build indexes of document contents.

This allows users to search by ideas rather than locations.

The precise filename becomes less important.

The content itself becomes the key.

This shift reflects another recurring theme of this primer.

Meaning matters more than storage location.

25.5 Indexing Knowledge

Full-text search systems achieve their remarkable speed through indexing.

Instead of examining every document during each search, they prepare an organized catalogue in advance.

Queries can then be answered almost instantly.

The experience resembles consulting the index of a book rather than reading every page from beginning to end.

Large collections become surprisingly manageable.

25.7 The Search Mindset

One of the most important habits cultivated by Unix is the understanding that information need not be remembered perfectly.

The computer remembers.

The textsmith asks good questions.

Instead of memorizing filenames, directories, or exact locations, experienced users increasingly rely upon search.

Searching becomes a natural extension of memory.

25.8 Why Search Matters

As our personal libraries continue to grow, searching becomes less a convenience than a necessity.

Thousands of notes.

Decades of correspondence.

Entire software projects.

Research archives.

Books.

Articles.

Documentation.

Without effective search, these collections gradually become inaccessible despite remaining physically present.

Search restores them to usefulness.

25.9 Lessons for the Textsmith

The textsmith gradually learns that information exists at several levels.

Sometimes we seek a file.

Sometimes a line within that file.

Sometimes a pattern.

Sometimes a relationship.

Modern search tools support each of these different forms of inquiry.

The result is not merely faster searching.

It is a fundamentally different relationship with knowledge itself.

Large collections cease to be intimidating.

They become searchable conversations waiting to happen.

25.10 Key Ideas

  • File search and content search solve different but complementary problems.
  • find remains the classic Unix tool for locating files.
  • fd modernizes file searching while preserving the Unix philosophy.
  • Desktop search systems use indexes to search document contents rapidly.
  • Full-text search emphasizes ideas rather than filenames.
  • Effective search transforms large collections into accessible knowledge.
  • The textsmith relies upon thoughtful questions rather than perfect memory.

In the final chapter of this part, we bring together everything we have learned.

How do all these tools become a single philosophy of work?

There we discover that the true power of text processing lies not in individual commands, but in the habits of mind they cultivate.