【PowerShell】Select-Stringで文字列検索(サブフォルダを含めて)

2019年8月8日PowerShell

スポンサーリンク

PowerShellの「Select-String」を使ってサブフォルダのファイルも含めて文字列検索を行う方法です。

まずは、サブフォルダを含めない検索方法

[サンプル]

 Select-String "検索文字列" 検索するファイル

“検索文字列"の部分は正規表現も使用可能です。

「検索するファイル」は少し注意が必要です。

フォルダのパスではなく、ファイルのパスを入れなければいけません。

例えば、以下のような感じです。

 Select-String "検索文字列" C:\work\test.txt

これにより、test.txt内の"検索文字列"に一致する部分のデータが取得できます。

しかし、一つずつファイルを指定してスクリプトを実行するのはめんどくさいですよね。

そんな時は、ワイルドカードを使いましょう!

ファイル名の部分を「*.*」とすれば、すべてのファイルの中から検索してくれます。

「*.txt」とすれば、拡張子がtxtのファイルから検索してくれるというように。

そして、本題のサブフォルダを含める検索方法

Select-String "検索文字列" (dir -recurse 検索するファイル)

上記のように書けば、サブフォルダのファイルまで検索してくれます。

お試しください。

PowerShell

Posted by ton