Grep

提供: Wikinote
2009年3月27日 (金) 23:17時点におけるHagio (トーク | 投稿記録)による版 (ファイル名付き cat)

移動: 案内検索

Tips

and/or 検索

and 検索をしたい場合は、grep に 2 度かける。

$ cat hoge.txt | grep hoge | grep fuga

順序を考慮した and 検索をしたい場合は、正規表現を使う。

$ cat hoge.txt | grep "hoge.*fuga"

or 検索をしたい場合は、-e オプションでパタンを羅列すれば良い。

$ ifconfig | grep -e "^\w" -e inet

検索文字列をハイライト表示

.bashrc に以下を追加しておく。

export GREP_COLOR='1;37;41'
alias grep='grep --color=auto'

ファイル名付き cat

例えば、/proc や /sys 中の情報を一覧表示したい場合、単なる cat だと、何がなんだかわからない。

$ cat /proc/sys/net/core/*
64
10
5
300
1000
 :

こういうときは、grep で空文字を検索すればよい。

$ grep "" /proc/sys/net/core/*
/proc/sys/net/core/dev_weight:64
/proc/sys/net/core/message_burst:10
/proc/sys/net/core/message_cost:5
/proc/sys/net/core/netdev_budget:300
/proc/sys/net/core/netdev_max_backlog:1000
 :

また、grep ではないけれど、head や tail を使うと、ファイル名がタイトルっぽく表示される。

$ head /proc/sys/net/core/*
==> /proc/sys/net/core/dev_weight <==
64

==> /proc/sys/net/core/message_burst <==
10

==> /proc/sys/net/core/message_cost <==
5