【Windows】grepで検索する方法!代わりのコマンドを紹介!

LinuxというOSで利用することができるgrepコマンドですが、Windowsで利用する場合は別のコマンドで代用するしかありません。WindowsでLinuxのgrepコマンドの代替手段となるものはどういうものか、使い方とともに紹介していきます。

【Windows】grepで検索する方法!代わりのコマンドを紹介!のイメージ

目次

  1. 1【Windows】grepで検索する方法
  2. grepコマンドとは?
  3. Windowsのコマンドを使用してgrepのように検索する方法
  4. 最後に

【Windows】grepで検索する方法

LinuxというコンピューターのOSがありますが、便利なgrepコマンドをWindowsでも利用しタイ人も多いでしょう。

grepコマンドとは?

そもそもgrepコマンドとはどういうものなのか、Windowsしか使ったことのない人向けにそのコマンドの内容を紹介します。

Linuxで使用できファイルの検索を含む作業を自動化できるコマンド

grepとは、Linuxで利用することができるコマンドで、ファイルの検索を含む作業の自動化をすることができるコマンドです。

ファイルの中にある「文字列(パターン)」が含まれている行を表示することができ、ログファイルからの特定のログの検索や、ソースコードのコード検索などをすることが可能です。

Windowsにgrepコマンドは存在しない

このgrepですが、UNIX系で使えるコマンドなので、UNIX系OSではないWindowsでは使えません。

Windowsのコマンドを使用してgrepのように検索する方法

しかし、Windowsでもgrepのようなことしたい人もいます。grepコマンドをよく利用していた人は特に思うことが多いでしょう。この場合、grepコマンドの代わりとして次に紹介するコマンドを利用してみてください。

コマンドプロンプト/PowerShellの起動方法

コマンドの紹介の前に、コマンドを利用するコマンドプロンプトや、Windows10からコマンドプロンプトと同様に利用できるWindows PowerShellの起動方法を紹介します。

cmdで検索してコマンドプロンプトを起動

コマンドプロンプトは、検索欄で「cmd」と入力して起動します。

Windowsマーク+Rキーでメニューを開いて「Windows PowerShell」を起動

Windows PowerShellは、Windowsキー+Xキーで表示されたメニューで「Windows PowerShell」を選択しましょう。

findコマンド

findコマンドは、「Shift-JIS」と「BOMありのUTF-16」の文字コードの検索にしか対応しておらず、UTF-8には対応していません

findコマンド使用例

findコマンドの内容と主要オプション、例示(上図)です。

コマンド
find 検索する文字列 検索対象のファイル名
オプション
/C 検索する文字列を含む行の数だけ表示
/V 検索する文字列を含まない行をすべて表示
/I 大文字・小文字の区別なしで検索
/N 検索に引っかかった行をすべて表示
/OF オフライン属性が設定されているファイルも検索する

findstrコマンド

findstrコマンドは、findコマンドの強化バージョンです。対応文字コードは同じく「Shift-JIS」と「BOMありのUTF-16」のみで、UTF-8には対応していません。

findstrコマンド使用例

findstrコマンドの内容と主要オプション、例示(上図)です。「正規表現」というのを使いこなせないと使いづらいコマンドですが詳細は割愛します。

コマンド
findstr 検索する文字列(正規表現) 検索対象ファイル
オプション
/X 検索する文字列をに完全一致する行のみ表示
/V 検索する文字列に一致しない行のみ表示
/I 大文字・小文字の区別なしで検索
/M 検索する列にヒットした場合ファイル名のみ表示
/S 現在のフォルダとその中のサブフォルダすべてから一致するファイルを検索

Select-Stringコマンドレット

Windows PowerShellでのみ利用できる、文字コードUTF-8にも対応しているコマンドがSelect-Stringコマンドレットです。コマンドプロンプトでは利用できません。

Select-Stringコマンドレット使用例

Select-Stringコマンドレットの内容と主要オプション、例示(上図)です。

コマンド
Select-String 検索する文字列 検索対象のファイル名 -Encoding default
オプション
-Path ファイルのパスを指定(省略可)
-Pattern 検索する文字を、文字列または正規表現で指定
-NotMatch 指定したパターン(正規表現)に一致しないファイルを検索
-CaseSensitive 大文字と小文字を区別する(省略時は区別なし)

最後に

grepコマンドの代わりとなるコマンドはいくつかありますので、利用しやすいものを利用してみてください。

関連するまとめ

関連するキーワード

Original
この記事のライター
八千草 蛍
分かりやすく気軽に読める記事を書いてまいりたいと思います。よろしくお願いいたします。
インステ