【Linux】
ファイル内をキーワード検索する方法

grepコマンド・fgrepコマンド・vimコマンドの使い方

投稿日 2022/06/11 更新日 2022/06/11


こんにちは。当サイトの管理者「元木皇天」です。

今回はファイル内をキーワード検索する方法について解説いたします。

環境
OS:Kali Linux Ver5.15

grepコマンドで検索する

ファイル内をキーワード検索する方法の一つに「grep」コマンドがあります。

grepコマンドを使用することで、キーワードに一致した行のみをファイル内から抽出することができます。

なおgrepコマンドで検索するキーワードには正規表現が使用できます。

以下は「sample.txt」ファイルから「aまたはAから始まる行」のみを抽出する例です。

grep -i a.* sample.txt

また、grepコマンドで使用できる主なオプションは以下の通りです。

オプション説明
-cパターンが一致した行の行数を表示する
-f検索パターンをファイルから読み込む
-i大文字・小文字を区別せずに検索する
-n検索結果に行番号も表示する
-vパターンに一致しない行を表示する
-E拡張正規表現を使用する

fgrepコマンドで検索する

ファイル内をキーワード検索するもう方法に「fgrep」コマンドがあります。

grepコマンドとは異なり、正規表現を使用せず、純粋に文字列として検索を行うことができます。

以下は「sample.txt」ファイルから「a.*」という文字列を含む行のみを抽出する例です。

fgrep a.* sample.txt

vimコマンドで検索する

vimコマンドを使用してもファイル内をキーワード検索することができます。

まず、vimコマンドで対象のファイルを開きます(ここではsample.txtファイルを検索対象にしています)。

vim sample.txt

その後、以下コマンドを入力します。

/検索キーワード

または

?検索キーワード

「/」と「?」の違いは、「/」はカーソル位置から後ろに向かって検索を行うのに対し、「?」はカーソル位置から前に向かって検索を行います。

まとめ

ファイル内を検索するには
grepコマンド
fgrepコマンド
vimコマンド
を使用します。