021.grepコマンド 特定の文字を含む行を検索する

プロが現場で構築するLinuxサーバー技術が習得できる講座とセミナー

   → 【Linux講座】リナックスマスター・ホームスタディ講座【初級編】

   → 【Linuxセミナー】リナックスマスター2日間集中セミナー【CentOS版】

スポンサードリンク

特定の文字を含む行を検索する

■-- 文法 --■

grep (オプション) パターン ファイル名

     例)
       grep▲testpoint▲file.txt
      「file.txt」から「testpoint」という文字列を含む行を抽出する
     ※▲はスペースを表してます。

■ オプション

-h 複数のファイルを指定した場合に、抽出した行の先頭にファイル名を表示しない
-i パターンで検索する際、大文字、小文字を区別しない
-n パターンを含む行が検索したファイルの何行目にあるのかを表示する
-v パターンにを含まれない行を抽出する

■ 実行例

-----------------------------------------------------------------
カレントディレクトリ内で「linux-wlan」という文字を含むファイルを検索する。

-----------------------------------------------------------------
#grep "linux-wlan" * ←「grep」コマンド実行
wlan.conf:# linux-wlan
wlan.conf:# Inquiries regarding the linux-wlan Open Source project can be
wlan.conf:# info@linux-wlan.com
wlan.conf:# http://www.linux-wlan.com
wlan.conf: DesiredSSID="linux-wlan"
-----------------------------------------------------------------
「linux-wlan」を含む行がファイル「wlan.conf」名と一緒に表示されます。

これを使うと探したい文字列さえわかれば、いちいちファイルの内容を表示させることなく、ファイル内容をけんさくすることができます。

知っておいて損はないコマンドです。


○大文字と小文字を区別しないで表示する

「grep -i "LINUX-WLAN" *」

Linuxというのは大文字と小文字は別の文字として扱います。

ですので、このgrepを実行したときにも大文字と小文字は別の文字として扱われます。間違って大文字のものを小文字で検索したりすると結果が何も表示されないという場合があります。

もし、あなたの記憶があいまいなときにはこのオプションを使って大文字小文字を区別しない検索をするとよいでしょう。

-----------------------------------------------------------------
# grep -i "LINUX-WLAN" *
wlan.conf:# linux-wlan
wlan.conf:# Inquiries regarding the linux-wlan Open Source project can be
wlan.conf:# info@linux-wlan.com
wlan.conf:# http://www.linux-wlan.com
wlan.conf: DesiredSSID="linux-wlan"
-----------------------------------------------------------------

○検索したい文字がファイルの何行目にあるか行番号を表示する

「grep -n "linux-wlan" *」

この文字列を検索するという場合は、結構ファイルの内容を修正したいときに修正箇所の文字列はわかるけど、ファイル名を忘れたって時に私は使うことが多いです。なので、この行番号をつけることで、修正するファイル名と修正する行がわかってとても重宝しているんです。

-----------------------------------------------------------------
#grep -n "linux-wlan" *
lan.conf:9:# linux-wlan
wlan.conf:34:# Inquiries regarding the linux-wlan Open Source project can be
wlan.conf:38:# info@linux-wlan.com
wlan.conf:39:# http://www.linux-wlan.com
wlan.conf:103: DesiredSSID="linux-wlan"
-----------------------------------------------------------------

ファイル名の右隣りに番号がありますよね。

これが行番号になります。これがあるとその文字が含まれている箇所がすぐにわかるので、とても便利ですよ。

■CentOSサーバー構築マニュアルを無料プレゼント
 CenOSのサーバー構築手順、VMware Playerの
 ダウンロードとインストール手順をまとめたマニュアルを
 無料でプレゼントしています。


 詳しくは↓のページで説明しています。今すぐクリックしてダウンロードしてください。
 CentOSサーバー構築無料マニュアル


スポンサードリンク





Linux初心者のあなたもサーバー管理者になれる

Linux初心者のあなたもサーバー管理者になれる!!

UNIX/Linuxコマンド Topicsでは初心者からでも気軽にLinux(リナックス)を、はじめられる方法を紹介しています。このサイトのいちばんの目的は、あなたにLinux(リナックス)を、はじめてもらうことです。 興味があるならサーバー構築してみてください。

このサイトについて、、、。まずは私の想いを知ってください。あなたに一番最初に読んで欲しい

このサイトについてこちらをクリックしてください。

UNIX/Linuxコマンド Topics Linux初心者のためのサイト:当サイトについて

  • UNIX/Linuxコマンド Topics Linux初心者のためのサイトは個人で運営しているサイトです。
  • ご意見、ご質問はメールでお願いいたします。

スポンサードリンク

Linux初心者向け

Linuxコマンド

Linux Tips

Linuxサーバー構築

Linux用語集

当サイトについて

Linux Information

mag2メルマガ

CentOS6.3サーバー

サイト内検索



[ 相互リンク ]

格安ドメイン

執筆した本

スポンサードリンク

[ 広告について ]

[ 相互リンク ]

copyright(c) 2004-2012 UNIX/Linuxコマンド Topics Linux初心者のためのサイト All Rights Reserved.
<>