Windows10のファイル(全文)検索は???
絶対該当ファイルがあるはずなのに見つからない、ということが多くあります。
ファイル検索は、エクスプローラの右上の「ここ」からやりますよね。
あらかじめインデックスを作成しておけばできるらしいですが、インデックスを作成するのも大変(PCのリソースを使う)なのです。
どうも、最近使ったファイルに関してはインデックスが作成されるようですが、ほとんどの場合うまくいきません。
aprico-media.com
Powershellで検索出来る
カレントフォルダですべてのファイルを対象にhogeで検索
$ Select-String -Path * -Pattern 'hoge'
指定したファイルの中のみを検索
$ Select-String -Path hoge.txt -Pattern 'hoge'
ちなみにSelect-String
はsls
というエイリアスがあります。
下位フォルダを含めて全文検索
$ Get-ChildItem -Path ./* -Filter * -Recurse | Select-String -Pattern 'main'
OR検索は末尾にキーワードを追加、3つ?以上も可
$ Select-String -Path "*.txt" -Pattern "hello","world"
AND検索はパイプでつなぐ
$ Select-String "hello" *.txt | Select-String "world"
キーワードの前後数行を同時に見たいとき
$ Select-String -Encoding Default -Path <ファイル名> -Pattern "キーワード" -Context 3,4
カレントフォルダの移動はLinuxと同じです。
$ cd ***
ファイルパスにスペースなどが含まれる場合はパスを" "
で囲みます。
$ cd "Users\***\Documents\Visual Studio 2017\Projects"
「権限がない」と怒られるときは管理者権限でPowershellを起動します。
pc-karuma.net
まとめ
ShellとはLinuxのターミナルのようなものですが、Powershellは独特の似て非なるものです。
しかし、このように使えば使える機能もあります。
私も以前はExcellのVBAでスクレイピングをしていたこともありましたが「ちょっと使う」にはPowershellが便利です。