linux / macOS grep サブディレクトリ テキストファイルの文字列を探す

macOS grep 画面

macOSやLinuxで複数あるテキストファイルの中の特定の文字列を検索する場合、ターミナルアプリのgrepコマンドを使えば簡単に検索が可能です。下のような2つのフォルダ内にそれぞれCSVファイルが入っています。CSVファイルはテキストファイルなのでgrepで検索できます。

複数フォルダにまたがったCSVファイル
複数フォルダにまたがったCSVファイル

grepコマンドで -rのオプションをつけて実行します。grep -r [検索したい文字] [パス]です。

grep -r ワイン ./

上記コマンドを実行すると下のようにフォルダ名含めた結果が表示されます。

grep コマンド実行結果
grep -r コマンド実行結果

より正確に(色付き・行番号などオプション付き)

下記の例は、ログファイル内からIPアドレスを検索しています。

grep -rn --color=auto "52.xx.xx.xxx" .

-n: 該当行の行番号を表示。

--color=auto: 一致部分を色付きで表示。

find と grepを使っても同じような結果が得られます。下記はfind grepコマンドです。

find ./ -type f | xargs grep ワイン  
find [フォルダ名] -type f | xargs grep [検索文字列]
find [フォルダ名] -type f | xargs grep [検索文字列]

拡張子などを限定したい場合(例:.log ファイルのみ)

下記の場合もLOGファイルからIPアドレス検索する例です

find . -type f -name "*.log" -exec grep -Hn --color=auto "52.xxx.xx.xxx" {} +

find.log ファイルだけを対象にし、grep に渡しています。

macOS Sequoia 15.5 ユーザーアプリを配布と起動 セキュリティ設定

ユーザーアプリを起動させるセキュリティ設定方法

macOS Sequoia 15.5 上で ユーザーアプリを配布(ダウンロード)し起動する セキュリティ設定方法

ユーザーが作ったアプリをダウンロードした場合、macOSのデフォルトセキュリティ設定では起動しない場合があります。

目的のアプリが信頼できることが条件として下記の処理をすれば起動できます。

ユーザーアプリを起動後すぐに [システム設定] → [プライバシーとセキュリティ]を開く

下の方にスクロールしていくと [セキュリティ]項目に「お使いのMacを保護するために “xxxx”がブロックされました」と表示されます。

お使いのMacを保護するために "xxxx"がブロックされました

[このまま開く]ボタンがあるのでクリックするとアプリは起動します。

起動時に警告メッセージが出ます。

Appleは、このアプリに Macに損害を与えたり、プライバシーを侵害する可能性のあるマ
ルウェアが含まれていないことを検証できません。信頼できる提供元からのものであることが確認できない限り、このアプリを開いていないでください。
信頼できる提供元からのものであることが確認できない限り、このアプリを開いていないでください。

信頼できるダウンロードアプリということであれば「このまま開く」をクリックすると起動します。

さらに、Touch ID(指紋認証)を要求される場合があります

Macに損害を与えたり、プライバシーを侵害する可能性のあるアプリを開こうとしています
許可するには管理者のTouch IDを使用するか管理者のパスワードを入力してください。
Touch IDを使用するか管理者のパスワードを入力要求画面


PDFファイル結合|パスワード設定ツール

簡単MBTI診断 | あなたの性格タイプを分析

2022 MJELD TECHNOLOGIES. ALL RIGHTS RESERVED