サーバーのアイコン素材 その2



前回、grepのfオプションの基本的な使い方をご説明しましたが、
これだと行単位で完全に一致させたい場合は問題が生じてしまいます。

例として、前回のように、検索条件を記述したファイル「jyouken.txt」
(前回と同じもの)

と、検索対象となる「taisyou.txt2」を用意します。
(中身は少し変えます)

■jyouken.txt
a
b
c
d
e
f
g

■taisyou.txt2
a
b
c
d
e
f
g
h
i
j
a2

といった、検索条件にa2という文字列がある状態で前回同様検索すると、
「a2」があると、jyouken.txtの「a」にマッチしてしまいます。

%grep -f jyouken.txt taisyou.txt
a
b
c
d
e
f
g
a2

これでは不都合が出るケースも多いかと思います。

これを回避するには、-fオプションは正規表現を解釈するので、
jyouken.txtの文字列を

^a$
^b$
^c$
^d$
^e$
^f$
^g$
といった感じにして、先頭と末尾の指定をして、挟んでやればOKです。