mac コマンドで拡張子を指定して特定のテキストデータがあるファイルを探す

  • 作成日 2022.12.22
  • mac
mac コマンドで拡張子を指定して特定のテキストデータがあるファイルを探す

macのターミナル上で拡張子を指定して特定のテキストデータがあるファイルを探す手順を記述してます。「xargs」コマンドのあとに「grep」を使用することで見つけることができます。

環境

  • OS macOS Monterey
  • SHELL /bin/zsh

拡張子を指定して特定のテキストデータがあるファイルを探す

拡張子を指定して特定のテキストデータがあるファイルを探すするには、「find」の結果から「xargs」で「grep」を使用します。

実際に、カレントディレクトリ配下の拡張子が「.txt」であるものの中から「World」という文字列が含まれているものを抽出します。

$ find . -name '*.txt' | xargs grep World

<出力結果>
./d1/bar.txt:Hello World
./hoge.txt:Hello World

取得した結果を引数にコマンドを実行できる「xargs」を使用しないで、「grep」すると取得したファイル名の中ではなく、ファイル名が対象となってしまいます。

$ find . -name '*.txt' | grep World

<出力結果>
./HelloWorld.txt