2004年11月16日

[linux-users:103831] 指定した文字列を含まないファイルを見つける方法

こんにちは。松田陽一@三鷹です。

ある意味初歩的質問かも知れませんが、あまり良い方法が思い付かなかった
のと、ぐぐってもうまくヒットしなかったので、質問します。

表題の通りです。
指定した文字列を含まないファイルを抽出する方法です。

grep -v は、指定した文字列を含まない「行」を出力しますので、この目的
に合致しません。


パッと思い付く限りですと、例えば以下のような感じになるでしょうか:

$ for f in ~/spam/spam/*;do if ! grep yoh@xxxxx $f >/dev/null;then echo $f;fi;done

でも、これをコマンドラインですぐ書けるか、というと、ちょっと難しいか
な、と思うのです。

もしも、 grep のレコードセパレータの指定を変更できるのであれば、 -v
でも出来るのかも知れませんが、そのようなオプションは存在しないようで
す。

感覚的には、 hogegrep -v yoh@xxxxx ~/spam/spam/* とすると、指定文
字列を含まないファイルのみを出力してくれる、そんなものがないかなぁと
思ってます。
やっぱりシェルスクリプトやエイリアスでしか解決できないものなのでしょ
うか。
--
Nothing but a peace sign.
松田 陽一(yoh)
mailto:yoh@xxxxx
http://www.flcl.org/~yoh/index.htm

投稿者 xml-rpc : 2004年11月16日 17:23
役に立ちました?:
過去のフィードバック 平均:(0) 総合:(0) 投票回数:(0)
本記事へのTrackback: http://hoop.euqset.org/blog/mt-tb2006.cgi/27848
トラックバック
コメント
コメントする




画像の中に見える文字を入力してください。