ファイル内の文字を検索コマンドfind

ファイル内の文字を検索コマンドfindの使い方

まず初めに何もオプションを付けずにやってみましょう。

下記のテキストファイルを作成します。

このテキストファイルの「太郎」の文字を検索します。

下記のコードをコマンドスクリプトで起動します。

コード

find “太郎” ex1.txt

このように太郎が含まれている行の文書が表示されています。

findは同時にいくつかのファイルを検索することができますので、次節で解説します。

2つのファイルを同時に検索

次に2つのファイルを見てましょう

下記のコードをコマンドスクリプトで見てみましょう。

コード

find “太郎” ex1.txt ex2.txt

このように二つのファイルを分けて検索して、それぞれ該当する行を表示しています。

ファイルが1から3つぐらいまでなら、ファイル名を記載しても手間はあまりありません。10個、20個になると、だんだんファイル名を検索することがめんどくさくなりますよね。

そんな時はあいまい検索をすればいいので、次節で解説します。

ワイルドカード「*」を使ってファイルを検索

あいまい検索にはワイルドカード「*」を使用します。

ワイルドカードの後には文字数の指定がなく、どのような文字が入っていても問題ありません。

ワイルドカードを使った下記のコードをコマンドスクリプトで起動させます。

コード

find “太郎” ex*

このように二つの「ex1.txt」と「ex2.txt」ファイル内が検索をしてくれました。

あいまい検索はファイル名に使用できますが、検索文字には、注意が必要です。

注意点

””内の文字はワイルドカード「*」を使用できません。

指定した文字以外の行を表示させる場合はオプション/v

次はオプションを使っていきます。

まず/vで、検索文字以外を表示させます。

コード

find /v “太郎” ex1.txt

コマンドスクリプトの結果はこちら。

指定した文字の行数のみ表示する場合はオプション/c

次はオプションを使っていきます。

まず/vで、検索文字以外を表示させます。

コード

find /c “太郎” ex1.txt

コマンドスクリプトの結果はこちら。

行番号を表示し、文章も表示する場合はオプション/n

次はオプションを使っていきます。

まず/vで、検索文字以外を表示させます。

コード

find /n “太郎” ex1.txt

コマンドスクリプトの結果はこちら。

findコマンドで複数のオプションを組み合わせる

findコマンドのオプションをざっと紹介しました。複数のオプションを組み合わせることで任意のデータを得ることができます。

例:/v /nで検索ワード以外の行と行数を表す場合

コード

find /n /v “太郎” ex1.txt

コマンドスクリプト結果はこちら。

このように検索したワード以外の行と行数を表示することができました。

findコマンドはワードにも使えるのか?

今後調べて、追記します。

少々お待ちください。

findの使い方とオプションのまとめ

以下はコマンドスクリプトで「find /?」検索した内容をまとめています。

・findの機能

ファイル (複数可) 内のテキスト文字列を検索します。

・使い方

find [オプション] “文字列” [[ドライブ:][パス]ファイル名]

・オプション一覧

  /V   指定した文字列を含まない行をすべて表示します。 
/C        指定した文字列を含む行の数だけを表示します。
/N       行番号を表示します。
/I        大文字と小文字の区別をしないで検索します。
  /OFF[LINE] オフライン属性が設定されたファイルをスキップしません。

コメント

タイトルとURLをコピーしました