Find (UNIX)
Windowsコマンド(MS-DOSコマンド)としてのfindは、ちょうどUnixコマンドでいうところのfgrepのような文字列検索を行う。実行すると検索文字列が含まれる行が標準出力に出力される。ちなみにgrepに相当するコマンドはfindstrである。
この例では、カレントディレクトリ(ピリオドで表されている)とその配下にあるファイルとディレクトリについて名前が「my」で始まるものを探す。クォートはfindに渡す前のシェルパターン「my*」をシェルが解釈して、カレントディレクトリにある my で始まるファイル名リストに置き換えてしまうのを防ぐために必要となる。
以下の例では、/tmp 配下にある全ファイルについて、ファイルの中身に "search string" という文字列がないか検索するものである。
/dev/null は、ファイル名を表示するために必要となる。そうしないと、grepでマッチしたテキスト部分しか表示されない。等価な機能として grep の "-H" オプションや "--with-filename" オプションを使うことも出来る。
GNU grep では、同等の処理を単独で以下のように行うこともできる。
次の例は、jsmith というユーザーのホームディレクトリで "LOG" という文字列を検索したものである。
次の例では、カレントディレクトリ配下で全ての XML ファイルについて "ERROR" という文字列を検索する。
検索文字列を囲むダブルクオート (" ") やファイル名に対応する括弧を囲むシングルクオート (' ') はこの例では無くてもよいが、空白を含む文字列や特殊文字を含む文字列を指定する際に必要となる。