PowerShell 文字列検索【初実験編06】
再帰文字列検索の方法
Select-String と Get-ChildItem を組み合わせて、下の3つを同時に指定できる構文を作ってみます。
検索フォルダー(階層指定) c:\実験
検索ファイル名 *.txt
検索文字列 宝物
こんな感じ?
Get-ChildItem c:\実験 *.txt | Select-String 宝物
サブディレクトリー配下も検索したいので、「-Recurse」を付けます。
Get-ChildItem c:\実験 *.txt -Recurse | Select-String 宝物
検索に漢字を使ってますので、エンコードを指定(デフォルト)します。
Get-ChildItem c:\実験 *.txt -Recurse | Select-String 宝物 -Encoding default
最終的な実行例
PS C:> Get-ChildItem c:\実験 *.txt -Recurse | Select-String 宝物 -Encoding default 実験\dir2\dir2-1\test21.txt:7:なに 宝物 ぬねの 実験\dir2\dir2-1\dir2-1-1\test211 - コピー.txt:7:なに 宝物2 ぬねの 実験\dir2\dir2-1\dir2-1-1\test211.txt:7:なに 宝物 ぬねの
PowerShell Treeをファイルにリダイレクトしてみた【初実験編01】
PowerShell 同一階層のファイル名一覧をテキストファイルにリダイレクトしてみる【初実験編02】
PowerShell 起動方法(Windows10)【初実験編03】
PowerShell ファイル名の一括置換【初実験編04】
PowerShell ファイル検索【初実験編05】
PowerShell 文字列検索【初実験編06】
PowerShell VBAでPowerShellを実行して結果を取得する(Exec編)【初実験編07】
PowerShell VBAでPowerShellを実行して結果を取得する(Run編)【初実験編08】
PowerShell UNIXのシェルやDOSコマンド【初実験編09】
リンク